📜  Express.js req.params 属性(1)

📅  最后修改于: 2023-12-03 15:14:57.433000             🧑  作者: Mango

Express.js req.params 属性

在 Express.js 中,req.params 属性用于从请求 URL 中获取参数。它是一个对象,具有 URL 中指定的属性名称和相应的值。

使用方法

要从 URL 中获取参数,请使用冒号定界符(:)指定参数名称。例如,以下 URL 可以包含名为 id 的参数:

http://localhost:3000/users/:id

在 Express.js 应用程序中,您可以通过以下方式访问该 id 参数:

app.get('/users/:id', function(req, res) {
  console.log(req.params.id);
});

在这个例子中,当您请求 http://localhost:3000/users/123 时, req.params.id 的值将为 "123"

多个参数

您可以在同一个 URL 中定义多个参数。例如:

http://localhost:3000/books/:bookId/chapters/:chapterId

在 Express.js 应用程序中,您可以通过以下方式访问 bookIdchapterId 参数:

app.get('/books/:bookId/chapters/:chapterId', function(req, res) {
  console.log(req.params.bookId);
  console.log(req.params.chapterId);
});

在这个例子中,当您请求 http://localhost:3000/books/123/chapters/456 时,req.params.bookId 的值将为 "123"req.params.chapterId 的值将为 "456"

可选参数

您可以使用问号(?)字符指定可选参数。例如:

http://localhost:3000/search?query=:query

在 Express.js 应用程序中,您可以通过以下方式访问 query 参数:

app.get('/search', function(req, res) {
  console.log(req.query.query);
});

在这个例子中,当您请求 http://localhost:3000/search?query=hello 时, req.query.query 的值将为 "hello"。如果您没有指定查询参数,则该值会为 undefined

结论

在 Express.js 中,使用 req.params 属性可以轻松地从 URL 中获取请求参数。它可以处理单个参数、多个参数和可选参数,使您能够轻松地构建动态路由和查询参数。