浏览器的User-Agent字符串的标准格式是什么?

时间:2010-04-08 15:52:59

标签: user-agent

是否有用于创建用户代理字符串的RFC,官方标准或模板? iphone的用户代理字符串似乎很奇怪......

  
    

Mozilla / 5.0(iPhone; U; CPU iPhone OS 3_1_2,如Mac OS X ; en-us)AppleWebKit / 528.18( KHTML,类似Gecko )版本/ 4.0移动/ 7D11 Safari / 528.16

  

3 个答案:

答案 0 :(得分:66)

User-Agent标题是RFC2616的一部分,RFC1945是{{3}}的改进版本,其中声明:

  

User-Agent请求标头字段包含有关的信息      用户代理发起请求。这是出于统计目的,      跟踪协议违规,并自动识别用户      代理商为了定制响应以避免特定用户      代理人限制。用户代理应该包含此字段      要求。该字段可以包含多个产品令牌(第3.8节)      以及识别代理商和任何形成代理商的子产品的评论      用户代理的重要部分。按照惯例,产品代币      列出了它们识别的重要性      应用

   User-Agent     = "User-Agent" ":" 1*( product | comment )

product定义为:

   product         = token ["/" product-version]
   product-version = token
   token           = 1*<any CHAR except CTLs or separators>

并且comment为:

   comment        = "(" *( ctext | quoted-pair | comment ) ")"
   ctext          = <any TEXT excluding "(" and ")">

答案 1 :(得分:10)

这在请求标题部分的RFC 1945中指定。然而,它不是一种非常标准化的格式,并且用户代理倾向于在那里放置他们想要的任何东西。

答案 2 :(得分:3)

是的,请参阅:mozilla website,但正如前面提到的那样。基本上你可以放任何你想要的东西。出于统计/分析的目的,最重要的是,每个浏览器/操作系统都应该为自己标准化。