特性

中英双语

Express API 中的属性是:

  1. 分配的属性(例如:req.baseUrlreq.originalUrl
  2. 定义为吸气剂(例如:req.securereq.ip

由于类别 1 下的属性是在当前请求-响应周期的上下文中动态分配给 requestresponse 对象的,因此它们的行为不能被覆盖。

可以使用 Express API 扩展 API 覆盖类别 2 下的属性。

以下代码重写了如何导出 req.ip 的值。现在,它只返回 Client-IP 请求标头的值。

Object.defineProperty(app.request, 'ip', {
  configurable: true,
  enumerable: true,
  get () { return this.get('Client-IP') }
})