[解決済み] Express.js:リモートクライアントアドレスを取得する方法
2022-03-16 12:08:26
質問
リモートユーザーのIPアドレスをどのように取得すればよいのか、完全に理解していません。
例えば、次のような簡単なリクエストルートがあるとします。
app.get(/, function (req, res){
var forwardedIpsStr = req.header('x-forwarded-for');
var IP = '';
if (forwardedIpsStr) {
IP = forwardedIps = forwardedIpsStr.split(',')[0];
}
});
上記の方法で実際のユーザーIPアドレスを取得することは正しいのでしょうか、それとももっと良い方法があるのでしょうか? また、プロキシについてはどうでしょうか?
解決方法は?
NGiNX などのプロキシの後ろで動作している場合は、以下の点をチェックしてください。
'x-forwarded-for'
:
var ip = req.headers['x-forwarded-for'] || req.socket.remoteAddress
もしプロキシが「あなたの」ものでないなら、私は
'x-forwarded-for'
ヘッダは詐称される可能性があるからです。
関連
-
[解決済み】Nodejs: Errorを解決する方法。ENOENT: そのようなファイルまたはディレクトリがありません
-
[解決済み】Node Version Manager のインストール - nvm コマンドが見つかりません。
-
[解決済み] Node.jsのプログラムにコマンドライン引数を渡すにはどうしたらいいですか?
-
[解決済み] package.jsonの各依存関係を最新バージョンに更新する方法は?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] Node.jsで終了する方法
-
[解決済み] ホストからDockerコンテナのIPアドレスを取得する方法
-
[解決済み] Node.js上のExpress.jsでGET(クエリ文字列)変数を取得する方法とは?
-
[解決済み] エラーが発生しました。クライアントに送信された後にヘッダーを設定できない
-
[解決済み] Express.js - app.listen vs server.listen
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] リソースの読み込みに失敗しました: net::ERR_CONNECTION_REFUSED : Nodejs
-
[解決済み】Node.js getaddrinfo ENOTFOUND
-
[解決済み】MongoDBでコレクションを日付で並べ替えるには?
-
[解決済み】ブロックスコープの宣言は、ストリクトモード以外ではまだサポートされていません。
-
[解決済み】Passport.js - エラー: ユーザーのセッションへのシリアライズに失敗しました。
-
[解決済み] AWS s3 api error: specified bucket does not exist.
-
[解決済み] Express.js req.bodyが未定義です。
-
[解決済み] DynamoDBで一括削除するにはどうしたらいいですか?
-
[解決済み] ノードでユーザーのIPアドレスを決定する方法
-
[解決済み】Expressで完全なURLを取得する方法は?