有没有办法在 Rails 3.1 中检测用户代理 [重复]

Posted

技术标签:

【中文标题】有没有办法在 Rails 3.1 中检测用户代理 [重复]【英文标题】:Is there a way to detect user agent in Rails 3.1 [duplicate] 【发布时间】:2011-11-30 20:04:43 【问题描述】:

可能重复:Auto detect mobile browser (via user-agent?)Rails 3: HTTP_USER_AGENT

有没有办法检测当前访问者的用户代理?我目前正在做一个显示视频文件的项目。但对于 ipad、iphone / samsung galaxy tab / internet explorer / firefox。我需要显示视频是否有可靠的方法来检查哪个浏览器正在访问我的 rails 应用程序?

谢谢大家!

【问题讨论】:

你在问这个问题之前搜索过吗?见this question。 【参考方案1】:

是的,就用这个

request.env["HTTP_USER_AGENT"]
#or
request.user_agent

【讨论】:

我不确定我们是否可以称其为“可靠的方式”:p【参考方案2】:

使用简单的 gem 怎么样?

If I remember well, I used this one last time.

gem 安装用户代理

The same one on GitHub

我认为这是一个很好的方法......

【讨论】:

大声笑,有一个宝石。 这是一个相当古老的 gem,does not even include Windows 8,它在 RubyGems 上只有一个版本。我建议useragent 操作系统支持高达Windows 10。【参考方案3】:

你也可以用jquery做客户端...有一个插件

http://plugins.jquery.com/project/client-detect

【讨论】:

以上是关于有没有办法在 Rails 3.1 中检测用户代理 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

rails 3.1邮件程序中的asset_url

使用“桌面模式”浏览器仅检测移动用户

在 Rails/Apache 中自动托管用户域

swapImage src: 'image2.jpg' 在 Rails 3.1 中没有响应

使用 sencha touch 与 rails 3.1

在 JavaScript 中检测 Apple Silicon mac