2012-03-22 91 views
16

我注意到在Accept请求头,因为这参数:

Accept: application/json, text/javascript, */*; q=0.01

我有点好奇什么q=0.01手段?

+0

的可能重复的[这是Q =在接受\ * HTTP头0.5?](http://stackoverflow.com/questions/8552927/what-is-q-0-5-in-accept-http-headers ) – Sphinxxx 2014-07-25 11:39:29

回答

26

Accept标头的q属性告诉Web服务器在服务器可以满足多种类型的内容的请求的情况下客户端喜欢接收哪种类型的内容。确切的值并不重要,只有多个Accept标题之间的相对值。

只要只有一个Accept标头,q实际上不会做任何事情。但是,如果有多个指定优先级。例如(从here拍摄),假设你有标题:

Accept: *.*, q=0.1 
Accept: audio/*, q=0.2 
Accept: audio/basic q=1 

这可以被解释为“如果你有基本的音频,发送,否则给我一些其他的音频,或做不到这一点,只要给我你有什么。“

当然,没有人实际上强迫服务器按照描述处理这些标题(或者甚至支付任何对此的关注)。

+2

感谢乔恩,很好的解释。我很高兴:) – zanona 2012-03-22 11:01:19