如何在Go中请求具有特定字符集的页面?

如何在Go中请求具有特定字符集的页面?,第1张

如何在Go中请求具有特定字符集的页面?

NewReader的第二个参数记录为

contentType
而不是字符编码。这意味着它需要
Content-Type
HTTP标头中的字段值。因此,正确的用法是:

reader, err := charset.NewReader(resp.Body, "text/html; charset=iso-8859-1")

这完美地工作。

注意,如果给定的

contentType
内部没有有用的字符集定义,它将查看主体本身以确定字符集。并且尽管此页的HTTP标头有一个清晰的

Content-Type: text/html;charset=iso-8859-1

返回的实际HTML文档定义了不同的字符集编码:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

如果

contentType
您的代码中的设置错误,它将采用HTML中错误声明的字符集编码。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5016084.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-14
下一篇2022-11-14

发表评论

登录后才能评论

评论列表(0条)

    保存