nodejs获取客户机ip
/** * Created by chaozhou on 2015/11/24. */ var getIp = function(req){ var ipStr = req.headers['x-forwarded-for']; //F5 if(ipStr){ var ipArray = ipStr.split(","); if(ipArray.length > 1){ //如果获取到的为ip数组(用手机访问时,如果机房双线,可能获取到的为数组 for(var i = 0; i < ipArray.length; i++){ var ipNumArray = ipArray[i].split("."); var tmp = ipNumArray[0] + "." + ipNumArray[1]; if(tmp == "192.168" || (ipNumArray[0] == "172" && ipNumArray[1] >= 16 && ipNumArray[1] <= 32) || ipNumArray[0] == "10"){ //排除特殊区间ip continue; } return ipArray[i]; } } return ipArray[0]; }else{ //F5获取不到时 return req.ip.substring(req.ip.lastIndexOf(":") + 1); } }; exports.getIp = getIp;
作者:程序员小波与Bug
出处:https://codetrips.cn
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。如有问题,可以邮件:caiya928@aliyun.com
QQ:1419901425 联系我
如果喜欢我的文章,请关注我的公众号:程序员小波与Bug

浙公网安备 33010602011771号