Node.js 标头不显示ip地址?
我使用NPM中的KoaIO来获取客户端连接的IP地址。当我尝试以下代码时,上面的代码会打印在控制台中。我似乎无法获取客户端的ip地址Node.js 标头不显示ip地址?,node.js,header,koa,Node.js,Header,Koa,我使用NPM中的KoaIO来获取客户端连接的IP地址。当我尝试以下代码时,上面的代码会打印在控制台中。我似乎无法获取客户端的ip地址 { host: '127.0.0.1:8080', connection: 'keep-alive', 'cache-control': 'max-age=0', 'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Ch
{ host: '127.0.0.1:8080',
connection: 'keep-alive',
'cache-control': 'max-age=0',
'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/44.0.2403.89 Chrome/44.0.2403.89 Safari/537.36',
accept: '*/*',
referer: 'http://127.0.0.1:8080/',
'accept-encoding': 'gzip, deflate, sdch',
'accept-language': 'en-US,en;q=0.8',
cookie: 'io=bP2eXrqS3SkWYY4cAAAC11' }
我目前在本地主机上。因此,我希望客户端ip地址为127.0.0.1?尝试
this.request.ip
。它应该有用
经过测试,我意识到两件事
this.request.ip
返回客户端ip,但它不是。但是在配置我的代理之后,this.request.header[“x-forwarded-for”]
返回客户端ipapp.io.use(function* userLeft(next) {
// on connect
console.log(this.headers);
});
你好,我试过:
console.log(this.request.ip)
,返回undefined:/您正在代理服务器后面吗?我在这里使用nginx,但我也没有得到cleint ip。我必须做两件事才能把它做好。在我的服务器nginx配置中,我必须添加proxy\u set\u头X-Forwarded-For$proxy\u add\u X\u Forwarded\u For
与文档“x-forwarded-for”相反,它不受支持,因此我必须this.request.header[“x-forwarded-for”]
。我会相应地更新答案…您好!Im当前仅在localhost上提供所有内容。也许这就是问题所在?我现在刚刚尝试了localhost和console.log(this.request.ip)代码>返回::ffff:127.0.0.1。你运行的是什么版本的膝关节炎和淋巴结?两者都是最新的!0.12为节点和膝关节炎1.1.0(最新)
var koa = require('koa');
var app = koa();
app.use(function *(){
this.body = this.request.ip;
});
app.listen(3000);