gpt4 book ai didi

http - 主流浏览器支持哪些字符集?

转载 作者:可可西里 更新时间:2023-11-01 16:10:23 49 4
gpt4 key购买 nike

HTTP 1.1 Accept-Charset header 允许浏览器指定它接受的字符编码。我的问题是:

  • 对于主流浏览器,它们在 Accept-Charset header 中指定了哪些值?
  • 浏览器是否会根据域或 URL 或任何其他因素指定不同 Accept-Charset 值?
  • 是否有任何主流浏览器“容忍”未在 Accept-Charset header 中指定的字符编码?例如。服务器发送响应,明确指定不同的字符集,或者浏览器的 charset detection检测到不同的字符集?

干杯。

最佳答案

Accept-Charset header 取决于浏览器区域设置。我的 Firefox 发送ISO-8859-1,utf-8;q=0.7,*;q=0.7然后 Chrome 发送ISO-8859-1,utf-8;q=0.7,*;q=0.3而 IE、Opera 和 Safari 不发送 Accept-Charset header 。但是在俄罗斯或日本环境中,可能有其他东西代替 ISO-8859-1。

Accept-Charset header 没有多大用处。它们的目的是指定浏览器的偏好,以防服务器可以提供多种选择,但是如果你想让你的服务器做这样的事情,你真的会相信浏览器说的话吗?在我的示例中,浏览器所说的所有内容(如果他们说了什么)都表达了对 ISO-8859-1 优于 UTF-8 或其他编码的偏好,并且在 Chrome 的情况下,还表示对 UTF-8 的偏好优于其他编码而不是 ISO- 8859-1。

我从未见过域或 URL 的变化。虽然当然可能,但这样的变化没有多大意义。我们可以预期浏览器自身的环境很重要。

我测试中的所有浏览器都表明,通过 HTTP 协议(protocol),任何字符编码都是可接受的。他们通过根本不发送 Accept-Charset 或通过在 header 中包含 * 来做到这一点。他们实际能做的是另一回事,浏览器中的 View→Encoding 菜单不一定详尽无遗,但它们给出了浏览器可能支持多少种编码的一些想法。

HTML5 草案包含对 determining the character encoding 的冗长讨论.它部分是为了描述当前的浏览器行为,部分是规定或至少暗示浏览器应该做什么,区分两者并不总是那么容易。请注意,默认编码建议表中的“语言环境语言”与浏览器 语言环境相关,与网页语言无关。这是关于在没有更好的信息可用时推断编码,但显然具有不同语言环境的浏览器应该能够处理他们被建议推断的编码。

关于http - 主流浏览器支持哪些字符集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9029565/

49 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com