【发布时间】:2015-06-07 07:48:38
【问题描述】:
我目前正在尝试获取所请求用户的 IP。问题是 IP 返回 ::ffff:127.0.0.1 而不是 127.0.0.1。我尝试使用trusted proxy 选项(虽然没有使用代理),但req.ips 是空白的。使用 4.x Express.js。
router.get('/', function(req, res, next) {
console.log('ip', req.ip)
res.send({})
});
【问题讨论】:
-
那么你在用什么
req.ip或req.ips? -
req.ip,刚刚尝试req.ips作为测试。我只是不确定是什么导致了前缀::ffff:。 -
stackoverflow.com/q/5861107/1700321, en.wikipedia.org/wiki/IPv6_address#Presentation
Dotted-quad notation. -
是的,就是这样。 Windows 7 为 IPv4 请求提供了一个过渡层,并将此前缀添加到 IP。