Rails User Agent

要根据请求端的不同而返回不同的页面,首先就得判断出请求端是pc还是mobile。在http请求时,user_agent这个字段会记录用户所用的设备和浏览器。所以就得对user_agent进行解析,来获取是什么设备。

Getting Started

  • Install useragent gem package

    1
    $ gem install josh-useragent
  • Modify Gemfile

    1
    gem 'josh-useragent', '~> 0.0.3'
  • Bundle Install Package

    1
    $ bundle install
  • Usage

    1
    2
    3
    4
    5
    6
    7
    8
    user_agent = request.user_agent

    user_agent = request.env['HTTP_USER_AGENT']
    p user_agent #=> "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.3 Safari/537.36"

    user_agent_parsed = UserAgent.parse(user_agent)
    p user_agent_parsed.platform #=> 'Macintosh'
    p user_agent_parsed.browser # => 'Chrome'
  • Other Packages

    agent_orange
    browser