🚄
【Express】ルートパラメータの取得
概要
何かしらの一覧画面から詳細画面を表示する際などはURLパスに値を組み込み、サーバ側でそれを受け取って利用するのが一般的です。
今回はURLパスに埋め込まれた値をサーバ側で受け取る流れを確認します。
①URLパスにサーバ側に渡したい値を組みこむ
/users/417
- 今回サーバ側に渡す値は「417」とする
②ルーティングにて、ルートパラメータを設定する
- 値が組み込まれる位置にコロン(:)を記載
- コロンの後に任意の文字列を指定(今回は
userId
とする)
app.get('/users/:userId', (request, response) => {
})
③request.paramsオブジェクトを確認する
request.paramsオブジェクトを確認すると、ルートパラメータ名userId
がキーとして設定されており、valueにURLパスに組み込んだ値がセットされていることがわかる。
④request.params.ルートパラメータ名で値を取得する
request.paramsオブジェクトのuserIdプロパティの値を取得したいので、
request.params.userId
とする
app.get('/users/:userId', (request, response) => {
console.log(request.params.userId);
})
ターミナル
417
参照
Discussion