使用accept进行HTTP内容协商

时间:2016-09-07 17:43:10

标签: http http-headers http-accept-header

有人可以帮我澄清q参数的数字值代表什么。我知道这些值用于选择您的偏好,但我不明白的是如何使用这些数字。例如,在下面的代码中,如果我使用application/json;q=0.3,*/*,q=0.2

,我的偏好会保持不变
headers.append('Accept', 'application/json;q=0.9,*/*;q=0.8');

1 个答案:

答案 0 :(得分:1)

这取决于服务器应用程序。

您的第一个声明是“如果您能保证30%的质量,我将接受json,但如果不能,我可以接受20%质量的任何东西”。

你的第二句话是“我会接受json,如果你可以保证90%的质量,但如果不能,我可以接受任何80%的质量”。

但是,应用程序可以将其视为“如果可以,则提供json,否则为其他任何东西”。

Official spec here

有关详情see this question