Nodejs,Express - 尝试从请求对象获取客户端IP - 显示127.0.0.1

jor*_*dan 2 javascript node.js express

我正在连接到我的应用程序,该应用程序在AWS EC2实例上运行.我正在尝试获取客户端IP地址,但它显示为127.0.0.1

我已经试过两取回req.ipreq.connection.remoteAddress.有没有办法获得不是localhost IP的IP地址?

Emm*_*ett 5

如果您通过Nginx之类的代理来代理请求,则可以X-Forwarded-For在获取时配置express以尊重标头req.ip:

app.set('trust proxy', 'loopback');
Run Code Online (Sandbox Code Playgroud)

http://expressjs.com/api.html#app.set