今天项目需要用到nodejs获取客户端的IP地址,查了一下相关资料,以下代码可行,记录下来,以供大家参考:
function getClientIp(req) { return req.headers['x-forwarded-for'] || req.connection.remoteAddress || req.socket.remoteAddress || req.connection.socket.remoteAddress; };
代码第一段判断是否有反向代理IP(头信息:x-forwarded-for),在判断connection的远程IP,以及后端的socket的IP。
如果你有更好的方法,欢迎和我分享