Параметры маршрута

Последнее обновление: 23.11.2023

Параметры маршрута представляют именованные сегменты URL-адреса. Не стоит их путать с параметрами строки запроса. Например:

localhost:3000/about/user?id=3&name=Tome

Здесь параметры строки запроса - это то, что идет после вопросительного знака - id=3&name=Tome. Остальная часть, которая идет до вопросительного знака может содержать параметры маршрута.

Название параметра должно включать символы из диапазона [A-Za-z0-9_]. В определении маршрута параметры предваряются знаком двоеточия:

const express = require("express");
const app = express();

app.get("/products/:productId", function (request, response) {
  response.send("productId: " + request.params["productId"])
});

app.listen(3000);

В данном случае параметр называется "productId". Через коллекцию request.params можно получить все параметры и, в частности, значение параметра productId.

Если нам потребуется передать для этого параметра значение, то оно указывается в качестве последнего сегмента в строке запроса:

Параметры в Express и Node.js Передача параметров в Express и Node.js

Мы можем использовать более сложные комбинации параметров:

app.get("/categories/:categoryId/products/:productId", function (request, response) {
	const catId = request.params["categoryId"];
	const prodId = request.params["productId"];
	response.send(`Категория: ${catId}	Товар: ${prodId}`);
});
Получение параметров в Express и Node.js

Или к примеру:

app.get("/book/:pageName.:pageExt", function (request, response) {
	const pageName = request.params["pageName"];
	const pageExt = request.params["pageExt"];
	response.send(`Запрошенный файл: ${pageName}.${pageExt}`);
});
Комбинация параметров в Express и Node.js
Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850