我正在检测用户代理以获取网站上的技术支持,以便用户无需自己查找。这是我到目前为止所得到的,但无论我在哪个浏览器上测试它都显示为默认的“未知”任何建议我哪里出错了?
def cyberbrowser
mybrowser = ENV["HTTP_USER_AGENT"]
case mybrowser
when /MSIE 8.0/ then "Internet Explorer V8"
when /MSIE 7.0/ then "Internet Explorer V7"
when /MSIE 6.0/ then "Internet Explorer V6.0+"
when /MSIE 5.5/ then "Internet Explorer V5.5"
when /MSIE 5.22/ then "Internet Explorer V5.22"
when /MSIE 5.0/ then "Internet Explorer V5.0+"
when /MSIE 4.0/ then "Internet Explorer V4.0+"
when /MSIE 3.0/ then "Internet Explorer V3.0+"
when /MSIE 2.0/ then "Internet Explorer V2.0+"
when /Firefox/ then "Mozilla Firefox"
when /Camino/ then "Camino"
when /Dillo/ then "Dillo"
when /Epiphany/ then "Epiphany"
when /Firebird/ then "Mozilla Firebird"
when /Thunderbird/ then "Mozilla Thunderbird"
when /Galeon/ then "Mozilla Galeon"
when /IBrowse/ then "IBrowse"
when /iCab/ then "iCab"
when /K-Meleon/ then "K-Meleon"
when /Konqueror/ then "Konqueror"
when /SeaMonkey/ then "SeaMonkey"
when /Netscape/ then "Netscape"
when /OmniWeb/ then "OmniWeb"
when /Opera/ then "Opera"
when /Safari/ then "Safari"
else "Unknown"
end
end
答案 0 :(得分:51)
在控制器中尝试request.env['HTTP_USER_AGENT']
。如果这在您的模型中,请将其传递给您的模型。
答案 1 :(得分:4)
另外,请检查UserAgent gem: