15

基本上,我正在寻找可以让我轻松访问诸如useragentstring.com之类的信息的东西,但是在 JS 中,我无需解析用户代理并查找每个可能的文本位。对象可能是这样的:

browser      = UserAgent.Browser;                // Chrome
browserVer   = UserAgent.BrowserVersion;         // 5.0.342.9
os           = UserAgent.OperatingSystem;        // Windows NT
osVer        = UserAgent.OperatingSystemVersion; // 6.1
layoutEng    = UserAgent.LayoutEngine;           // WebKit
layoutEngVer = UserAgent.LayoutEngineVersion;    // 533.2

是否存在类似的东西,还是我必须自己写一个?编写另一个用户代理解析器似乎并不容易,因为所有这些模仿都可以追溯到网络的黑暗时代。

具体来说,我正在寻找不只是将用户代理分成几部分并将它们交给我的东西,因为这与用户代理本身一样无用;相反,它应该解析用户代理并识别引擎、浏览器、操作系统等,并仅返回具体部分,如示例中所示。

4

1 回答 1

11

这应该对您有所帮助,请查看以下值:

navigator["appCodeName"]
navigator["appName"]
navigator["appMinorVersion"]
navigator["cpuClass"]
navigator["platform"]
navigator["plugins"]
navigator["opsProfile"]
navigator["userProfile"]
navigator["systemLanguage"]
navigator["userLanguage"]
navigator["appVersion"]
navigator["userAgent"]
navigator["onLine"]
navigator["cookieEnabled"]
navigator["mimeTypes"]

var x = '';
for(var p in navigator){
   try {
      x += p + '=' + navigator[p] + "\n";
      console.log(x);
   }
   catch(e) {
       console.error(e);
   }
}

于 2010-04-08T10:45:44.503 回答