在Express.js中,请求参数和查询参数都可以通过req对象来访问和处理。req对象代表了客户端发起的HTTP请求,而res对象则代表了服务器对客户端的响应。

针对请求参数,可以通过req.params属性来访问。它是一个对象,包含了通过路由定义的参数。例如,在定义路由时使用了/users/:id这样的格式,那么可以通过req.params.id来访问id参数的值。

对于查询参数,可以通过req.query属性来访问。它也是一个对象,包含了客户端在URL中传递的查询参数。例如,对于URL /users?id=1&name=John,可以通过req.query.idreq.query.name来分别获取idname的值。

除了请求参数和查询参数,req对象还有一些其他常用属性和方法:

  • req.body:如果使用了中间件解析请求体,比如body-parser,则可以通过该属性获取请求体的内容。
  • req.header(field):获取指定请求头的值。
  • req.cookies:获取所有的客户端发送的Cookie。
  • req.get(field):获取指定请求头的值,不区分大小写。
  • req.path:获取请求的路径部分。
  • req.method:获取请求的HTTP方法。

res对象用于构建服务器对客户端的响应,常用的属性和方法包括:

  • res.send(data):发送数据给客户端,可以自动根据数据类型选择合适的响应头。
  • res.json(data):以JSON格式发送数据给客户端。
  • res.status(code):设置响应的HTTP状态码。
  • res.set(field, value):设置响应头的值。
  • res.cookie(name, value [, options]):设置Cookie。
  • res.redirect([status,] path):进行重定向到指定路径。

这些是reqres对象的一些常用属性和方法,可以根据具体需求查看Express.js的官方文档来获取更详细的信息。