我在谷歌应用引擎中有一个node-js express服务器,我正在尝试读取请求标头以获取用户真实IP并查明请求是来自HTTP还是HTTPS,但我无法访问任何我的请求标头对象中的x- *标头。
我将此代码添加到server.js文件的顶部:
app.set('trust proxy', true);
我正在尝试打印这样的标题:
app.get('/**',function(req,res){
console.log(JSON.stringify(req.headers));
console.log("req.headers['x-appengine-user-ip']: " + req.headers['x-appengine-user-ip']);
console.log("req.headers['x-forwarded-for']: " + req.headers['x-forwarded-for']);
console.log("req.headers['x-forwarded-host']: " + req.headers['x-forwarded-host']);
});
在我的日志文件中,这就是我所看到的:
{"host":"10.132.0.6","user-agent":"GoogleHC/1.0"}
req.headers['x-appengine-user-ip']: undefined
req.headers['x-forwarded-for']: undefined
req.headers['x-forwarded-host']: undefined
我做错了什么? 感谢。
答案 0 :(得分:1)
解决。
显然我正在查找错误的日志 - 我实际上正在查看来自Google负载余额的健康检查请求,并且请求为空。