express获取用户ip地址
js
function getClientIp(req) {
// 优先从 X-Forwarded-For 获取(代理/负载均衡器常用)
const xForwardedFor = req.headers['x-forwarded-for'];
if (xForwardedFor) {
return xForwardedFor.split(',')[0].trim();
}
// 其次从 req.connection.remoteAddress 获取
if (req.connection && req.connection.remoteAddress) {
return req.connection.remoteAddress;
}
// 最后从 req.socket.remoteAddress 获取
if (req.socket && req.socket.remoteAddress) {
return req.socket.remoteAddress;
}
return 'unknown';
}
const ip = getClientIp(req)
直接把express自带的req传入进去就行