バニラJavaScriptにて「ipify API」を利用してユーザのIPアドレスを取得する方法
あるサイトでユーザのIPアドレスを取得したいというケースがあった。普段であればPHPで取得できるがASPを利用したサイトのためPHPは使用不可という制限があった。調べたところ「ipify API」というAPIが無料かつ制限無しでIPアドレスを取得できる模様。以下に利用方法をメモ。
ipify API
公式サイト
GitHub
https://github.com/sindresorhus/ipify
利用方法
ソースコード
<script>
const url = 'https://api.ipify.org?format=json';
const xhr = new XMLHttpRequest();
xhr.open('GET', url);
xhr.send();
xhr.responseType = 'json';
xhr.onload = () => {
if( xhr.status == 200 ){
console.log(xhr.response); //Object { ip: "xxx.xxx.xxx.xxx" }
console.log(xhr.response.ip); //xxx.xxx.xxx.xxx
}else{
console.log(`Error`);
}
};
</script>
関連記事
-
-
構造化データ(JSON-LD形式)をJavaScriptで動的に描写する方法
あるサイトに構造化データをJSON-LD形式で出力させたかった。ただ、当該環境で ...
-
-
バニラJS対応(jQuery非依存)の画像遅延読み込みプラグイン「echo.js」の利用方法
あるサイトをブラウザの開発者ツールで見ていると「echo.js」と聞いたことの無 ...
-
-
JavaScriptにて「loglevel」ライブラリを利用して環境及びレベルによりログを出し分けする方法
JavaScriptにて何らかの確認の際にconsole.logを使うことが多い ...
-
-
jQueryでAjax通信したデータをPHPで受け取り、zip化したファイルをダウンロードさせる方法
jQueryのAjaxで何らかのデータをPHP側に送信し、PHP側で当該データを ...
-
-
Leafletでマーカーをグループ化し、チェックボックスの状態により表示非表示を切り替える方法
LeafletとOpenStreetMapでマップ上にマーカーを複数設置した上で ...