Node.js 从请求中获取信息

示例

从请求的url中获取信息(注意,这req是路由的处理函数中的请求对象)。考虑此路线定义/settings/:user_id和此特定示例/settings/32135?field=name

// 得到完整的路径
req.originalUrl // => /settings/32135?field=name

// 获取user_id参数
req.params.user_id // => 32135     

// 获取字段的查询值
req.query.field // => 'name'

您也可以像这样获取请求的标头

req.get('Content-Type')
// "text/plain"

为了简化获取其他信息的过程,您可以使用中间件。例如,要获取请求的主体信息,可以使用主体解析器中间件,它将中间请求主体转换为可用格式。

var app = require('express')();
var bodyParser = require('body-parser');

app.use(bodyParser.json()); // 用于解析application / json
app.use(bodyParser.urlencoded({ extended: true })); // 用于解析应用程序/ x-www-form-urlencoded

现在假设这样的请求

PUT /settings/32135
{
  "name": "Peter"
}

您可以像这样访问发布的名称

req.body.name
// "Peter"

以类似的方式,您可以从请求中访问cookie,还需要像cookie-parser这样的中间件

req.cookies.name