【javascript】ユーザーエージェントなどの情報を取得する方法
javascriptを使ってアクセスしてきたユーザーの各情報(ユーザーエージェントなど)を取得する方法をまとめています。
javascriptで取得できるユーザー情報
javascriptでは下記のユーザー情報などを取得できます。
このうちリクエストページ、ユーザーエージェント、リファラーなどはよく利用すると思います。
| 取得できる情報 | メソッド |
|---|---|
| ホスト名 | location.host、location.hostname |
| ポート番号 | location.port |
| リクエストページ | location.pathname |
| コード名 | navigator.appCodeName |
| ブラウザ名 | navigator.appName |
| ブラウザバージョン | navigator.appVersion |
| 言語セット | navigator.language |
| プラットフォーム | navigator.platform |
| ユーザーエージェント | navigator.userAgent |
| リファラー | document.referrer |
| ドメイン名 | document.domain |
| スクリーン幅 | screen.width |
| スクリーン高さ | screen.height |
| スクリーン色数(ビット) | screen.colorDepth |
javascriptでユーザー情報を取得
サンプルとして、アクセスしてきたユーザーの情報を画面上に表示するスクリプトを掲載します。
<script>
document.write("HOST : " + location.host);
document.write("HOSTNAME : " + location.hostname);
document.write("PORT : " + location.port);
document.write("REQUEST : " + location.pathname);
document.write("CODE : " + navigator.appCodeName);
document.write("BROWSER : " + navigator.appName);
document.write("VERSION : " + navigator.appVersion);
document.write("LANG : " + navigator.language);
document.write("PLATFORM : " + navigator.platform);
document.write("USERAGENT: " + navigator.userAgent);
document.write("REFERER : " + document.referrer);
document.write("DOMAIN : " + document.domain);
document.write("SCREEN.W : " + screen.width);
document.write("SCREEN.H : " + screen.height);
document.write("SCREEN.COL: " + screen.colorDepth + "Bit");
このスクリプトを任意のページに設置してアクセスすると、以下のような情報が取得できます。
HOST : ysklog.net
HOSTNAME : ysklog.net
PORT :
REQUEST : /javascript/1859.html
CODE : Mozilla
BROWSER : Netscape
VERSION : 5.0 (Windows)
LANG : ja
PLATFORM : Win32
USERAGENT: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:28.0) Gecko/20100101 Firefox/28.0
REFERER : http://ysklog.net/javascript/1708.html
DOMAIN : ysklog.net
SCREEN.W : 1600
SCREEN.H : 900
SCREEN.COL: 24Bit
IPアドレスは?
基本的に訪問してきたユーザーの情報をほとんど取得できているのですが、肝心なIPアドレスは取得できていません。
私はjavascriptを勉強する前はIPアドレスの取得はメソッド一つで楽勝だと思っていたのですが、残念ながらjavascriptではユーザーのIPをアドレスを取得することができません。
もしIPアドレスが必要であれば、PHPを使ってIPアドレスを取得し、javascriptに渡してあげる必要があります。
この方法の詳細は、javascriptでIPアドレスを取得する方法を参考にしてください。
あわせて読んでほしい!
コメント
まだコメントはありません。

