express-query-stringモジュールでGETパラメータを簡単に取得
ExpressでGETパラメータにアクセスする方法
req.query オブジェクトを使う
最も一般的な方法は、req.query
オブジェクトを使うことです。これは、URLのクエリ文字列に含まれるすべてのキーと値のペアを保持するオブジェクトです。
例:
app.get('/search', (req, res) => {
const query = req.query;
const keyword = query.keyword;
const page = query.page;
// 検索結果を表示する処理
});
この例では、/search
エンドポイントにアクセスすると、req.query
オブジェクトに keyword
と page
というキーと値のペアが含まれます。
express-query-string
モジュールを使うと、より簡単にGETパラメータにアクセスできます。
const express = require('express');
const queryString = require('express-query-string');
app.use(queryString());
app.get('/search', (req, res) => {
const { keyword, page } = req.query;
// 検索結果を表示する処理
});
この例では、express-query-string
モジュールを使って、req.query
オブジェクトに直接アクセスできるようにしています。
URLのパースを行う
自分でURLをパースして、GETパラメータを取得することもできます。
app.get('/search', (req, res) => {
const url = req.url;
const query = url.split('?')[1];
const params = query.split('&');
const keyword = params[0].split('=')[1];
const page = params[1].split('=')[1];
// 検索結果を表示する処理
});
この例では、URLをパースして、keyword
と page
というパラメータを取得しています。
ExpressでGETパラメータにアクセスするには、いくつかの方法があります。自分のプロジェクトに合った方法を選びましょう。
req.query オブジェクトを使う
app.get('/search', (req, res) => {
const query = req.query;
const keyword = query.keyword;
const page = query.page;
// 検索結果を表示する処理
});
express-query-string モジュールを使う
const express = require('express');
const queryString = require('express-query-string');
app.use(queryString());
app.get('/search', (req, res) => {
const { keyword, page } = req.query;
// 検索結果を表示する処理
});
URLのパースを行う
app.get('/search', (req, res) => {
const url = req.url;
const query = url.split('?')[1];
const params = query.split('&');
const keyword = params[0].split('=')[1];
const page = params[1].split('=')[1];
// 検索結果を表示する処理
});
他の方法
手動でパースする
簡単なクエリ文字列であれば、手動でパースすることもできます。
const url = 'https://example.com/search?keyword=hello&page=1';
const query = url.split('?')[1];
const params = query.split('&');
const keyword = params[0].split('=')[1];
const page = params[1].split('=')[1];
console.log(keyword, page); // 'hello', 1
node.js express query-string