最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

为什么Express属性ip不出现在Object.keys(请求)中?

运维笔记admin9浏览0评论

为什么Express属性ip不出现在Object.keys(请求)中?

为什么Express属性ip不出现在Object.keys(请求)中?

考虑以下代码:

const express = require('express');
const app = express();
app.get('/', function(request, response) {
    console.log(Object.keys(request));
    console.log(request.ip);
});
app.listen(1337);

在第一个日志中,我们可以看到ip不是request的属性,但在第二个日志中打印ip。为什么会这样?

回答如下:

根据Express的源代码

In this particular line

表示ip索引不在请求对象中,默认表示将该索引作为函数返回信任代理fn的值,并通过传递proxyaddr返回它。

Object.keys(Object) <- This only returns the indices that appear in the object.

那么Express Object.keys(请求)的动态和自动生成的索引如何找不到它。

发布评论

评论列表(0)

  1. 暂无评论