nodejs express 获取客户端的真实ip和域名 存储到mongodb
2018-01-15 19:24
661 查看
2018年1月15日 欢迎观阅Altaba的博客
本人在开发过程中,遇到需要利用nodejs +express + mongodb 去存储数据,数据包括获取请求者的真实ip和域名,从没玩过MongoDB,和很少开发nodejs项目的我为了实现项目需求,自己一个人捣鼓,这其中辛苦可能也只有小公司程序员才能领会到,好,吐槽到此为止,下面为大家介绍怎么通过nodejs express框架去获取到真实的客户端ip和域名。
1:获取客户端的真实IP
let getClientIp = function (req) {
return req.headers['x-forwarded-for'] ||
req.connection.remoteAddress ||
req.socket.remoteAddress ||
req.connection.socket.remoteAddress || '';
};
console.log(getClientIp(req));
let ip = getClientIp(req).match(/\d+.\d+.\d+.\d+/);
console.log(ip);
ip = ip ? ip.join('.') : null;
console.log(ip);2:获取客户端的域名
let domain = req.headers['referer'].match(/^(\w+:\/\/)?([^\/]+)/i);
domain = domain ? domain[2].split(':')[0].split('.').slice(-2).join('.') : null;注意点:获取客户端的ip老版本有一个req.headers['X-Real-IP'] 方法,该方法有时候会获取不到或者不支持,建议不去添加到获取ip方法中,本人栽倒在这一个星期(......)
3:如果有人想了解我开发的nodejs +express + mongodb数据抓取的项目的话,记得点赞评论留下邮箱哦
本人在开发过程中,遇到需要利用nodejs +express + mongodb 去存储数据,数据包括获取请求者的真实ip和域名,从没玩过MongoDB,和很少开发nodejs项目的我为了实现项目需求,自己一个人捣鼓,这其中辛苦可能也只有小公司程序员才能领会到,好,吐槽到此为止,下面为大家介绍怎么通过nodejs express框架去获取到真实的客户端ip和域名。
1:获取客户端的真实IP
let getClientIp = function (req) {
return req.headers['x-forwarded-for'] ||
req.connection.remoteAddress ||
req.socket.remoteAddress ||
req.connection.socket.remoteAddress || '';
};
console.log(getClientIp(req));
let ip = getClientIp(req).match(/\d+.\d+.\d+.\d+/);
console.log(ip);
ip = ip ? ip.join('.') : null;
console.log(ip);2:获取客户端的域名
let domain = req.headers['referer'].match(/^(\w+:\/\/)?([^\/]+)/i);
domain = domain ? domain[2].split(':')[0].split('.').slice(-2).join('.') : null;注意点:获取客户端的ip老版本有一个req.headers['X-Real-IP'] 方法,该方法有时候会获取不到或者不支持,建议不去添加到获取ip方法中,本人栽倒在这一个星期(......)
3:如果有人想了解我开发的nodejs +express + mongodb数据抓取的项目的话,记得点赞评论留下邮箱哦
相关文章推荐
- Jetty/Tomcat + Nginx反向代理获取客户端真实IP、域名、协议、端口
- Node.js、Express框架获取客户端IP地址
- Node.js 获取客户端IP, 以及nginx转发携带客户端ip配置
- 解决vue+express+mongoDB项目中node.js获取不到post数据
- Node.js 获取客户端IP
- 【Tomcat】-- Tomcat + Nginx反向代理https和wss并解决获取客户端真实IP、域名、协议、端口
- Jetty/Tomcat + Nginx反向代理获取客户端真实IP、域名、协议、端口
- node.js使用mongodb存储数据-客户端使用
- nginx反向代理node.js获取客户端IP
- Node.js+Express+MongoDB 建站实例——登录模块
- Java获取客户端真实IP
- DoraCMS 基于Nodejs+express+mongodb 内容管理系统
- nginx做反向负载均衡,后端服务器获取真实客户端ip
- Node.js、express、mongodb 入门(基于easyui datagrid增删改查)
- 零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门
- 配置Nginx方向代理后,php获取客户端真实IP
- Node.js + Express + MongoDB教程
- nginx反向代理后应用程序如何获取客户端真实IP?
- 通过nginx反向代理,Tomcat获取真实的客户端IP而非服务器IP
- PHP获取客户端的真实IP