我调查了邮递员的请求标题,并将其作为接受语言值
'accept: '*/*'
'accept-language': 'en-US,en;q=0.8',
所以我也在我的应用程序中使用了这个。
如果我希望服务器接受英语但是除了英语之外还接受任何其他语言,这是否足够?
答案 0 :(得分:2)
让我们一个接一个地分析它。
Accept
header是
指定响应可接受的某些媒体类型
所以现在你接受所有媒体类型(text/plain
,text/html
等等)并且它与语言无关。
Accept-language
restricts
首选的自然语言集合 对请求的回应
和
如果请求中存在标头字段且没有可用的标头字段 响应的表示具有匹配的语言标记, 原始服务器可以通过处理来忽略标题字段 回应好像不受内容谈判或尊重 标题字段通过发送406(不可接受)响应。但是, 不鼓励后者,因为这样做会阻止用户访问 他们可以使用的内容(使用翻译软件,用于 例子)。
理论上406
响应代码是可能的(但不太可能),因此最好将标题指定为en-US,en;q=0.8,*;q=0.7