技術

[Rails]「どのブラウザからのアクセスか」を判別する方法

投稿日:

こんにちは。たなかです。

前回以下のような記事を書きました。

 

[Rails]遷移元のURLを表示する方法

 

上記でもちょっと触れましたが、「どのブラウザからのアクセスか」判別する方法についてご紹介しようと思います。

 

どのブラウザからのアクセスか判別する

request.env[‘HTTP_USER_AGENT’]をつかう!

 

リクエストパラメータのユーザーエージェントには利用ブラウザや端末の情報が含まれています。

 

 request.env['HTTP_USER_AGENT'].include? "Chrome" 

 

上記のような書き方でchromeからのアクセスの場合に対する出し分けが可能です。

 

 

どの端末からのアクセスかを判別する

 

 request.env['HTTP_USER_AGENT'].include? "Mobile" 

 

上記でどの端末からのアクセスの場合に対する出し分けが可能です。

ちなみにiPhone/iPad/iPod Touch には全て ‘Mobile’ という文字列が含まれているので上記のような記述で「iOS系のモバイル端末からアクセスがあれば」といった条件分岐を作成できます。

 

まとめ

今回はユーザーエージェントについてでした。

クロスプラットフォームでアプリ開発をしていると、OS差やブラウザ差を考慮する必要が出てきます。

今回のようにユーザーエージェントを利用して出し分けできると何かと便利です。

短いですが、今回はここまで。

 

参考サイト

-技術
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

auto_incrementの値を確認して変更

こんにちは、コーテッグのこやまです。 railsとmysqlを使っていて、自動で …

[Ionic] ionic serveでの動作確認でファイルの変更が反映されない!

こんにちは。たなかです。 参画しているプロジェクトで散々苦しめられているIoni …

no image

rubyでシンボリックリンクを作成する

rubyでシンボリックリンクを作る機会がありました。 どちらも、srcへのシンボ …

no image

【rails】websocket-rails動きません!

どうも中田です。 巷ではrailsでwebsocketを動かすのは簡単♪簡単♪っ …

Dockerでwheneverが動かない (bundler: failed to load command: bin/rails (bin/rails))

どうも中田です。 久々の投稿になります。 正確にはwheneverで登録したcr …