gpt4 book ai didi

http - 为什么在 HTTP Accept-Language header 中使用质量值?

转载 作者:可可西里 更新时间:2023-11-01 15:07:02 35 4
gpt4 key购买 nike

在 HTTP 中,Accept-Language请求 header 如下所示:

Accept-Language: da, en-gb;q=0.8, en;q=0.7

为什么 quality values (q=...) 包含在 HTTP 规范中?难道不能按质量对语言进行排序,为具有相同质量的语言选择任意顺序,并忽略任何 q=0 的语言吗?

最佳答案

有趣的问题。

关于此功能如何产生的讨论可能隐藏在邮件列表文件的某个地方,我找不到有效的链接。您的示例不是唯一有问题的示例。如果它支持两种语言,那么带有“fr; q=1.0, en; q=1.0”的服务器是什么。为法国人服务,因为它是第一位的? “fr, en; q=1.0”呢?

在我看来,一个有序的语言偏好列表比当前的加权(可能排序)列表更适合解决这个问题。有太多边缘情况,其中规范对实现的预期行为含糊其辞。

至少(一些)规范的贡献者同意此功能远非完美(Key Differences between HTTP/1.0 and HTTP/1.1 - Paper Presented at The Eighth International World Wide Web Conference):

因为内容协商机制允许 qvalues 和通配符,并表示跨多个维度(语言、字符集、内容类型和内容编码)的变化,自动选择“最佳可用” ' 变体可能很复杂,并可能产生意想不到的结果。这些选择可以以微妙的方式与缓存交互;请参阅第 3.4 节中的讨论。

内容协商有望成为附加协议(protocol)演进的沃土。例如,HTTP 工作组认识到有关客户端实现功能(如屏幕大小、分辨率和颜色深度)的自动协商的实用性。 IETF 已创建内容协商工作组来推进该领域的工作。"

简而言之,我没有真正的答案,但希望规范过程的参与者能进来。

关于http - 为什么在 HTTP Accept-Language header 中使用质量值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6548214/

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