express で IP を取得する際などに利用する req.connection 非推奨(deprecated)の対処

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
express で IP を取得する際などに利用する req.connection 非推奨の対応についてメモしました。
経緯
IPを取得する関数でreq.connection.remoteAddress
を利用していて
VSCodeで編集していた際に打ち消し線がついていてreq.connectionとなっていたため詳細を確認したことがきっかけでした。
環境
- yarn 1.22.10
- Node 14.15.3
- express 4.17.1
原因
req.connection が Node 13.0.0から非推奨(deprecated)になっているようです。
対処
req.socketへ変更
IPを取得する箇所をreq.socketから取得する形で対応しました。
元のコード
javascriptreq.connection.remoteAddress
変更後のコード
javascriptreq.socket.remoteAddress
以上になります。
expressの記事Express
- article
express で IP を取得する際などに利用する req.connection 非推奨(deprecated)の対処
- article
Next.jsのCustom Server(Express)を利用してTypeScriptファイル保存時にnodemonで再起動するための手順
- article
mkcert でローカル環境へオレオレ認証局とオレオレ証明書を作成し Node.js の Express サーバーを SSL(https)で起動する手順
- article
express-sessionでセッション保存時にエラーにはならないがセッションが保存されない問題の対応
- article
Node.js の Express と docker で立ち上げた redis を使って簡単なログイン機能を実装する手順
- article
Node.jsのフレームワークExpressで簡単なAPIをサクッと作成する手順