node获取客户端ip功能简单示例


Posted in Javascript onAugust 24, 2019

本文实例讲述了node获取客户端ip功能。分享给大家供大家参考,具体如下:

使用nodejs来获取客户端ip

遇到了一个需求,就是服务端让前端自己获取ip,当时就是各种百度,发现通过node来获取是可以的,但是也是node在前端项目内起了一个服务(我起的是express服务),最后证实,服务端自己就可以获取客户端IP。。。

但是我还是写了一个方法来获取,网上有很多方法,就是一个函数的问题,很简单。

代码如下:

var express = require('express')
var app = express();
//发送请求,获取客户端ip
app.get('/', function (req, res) {
  var clientIp = getIp(req)
  console.log('客户端ip',clientIp)
  res.send('Hello World');
})
//通过req的hearers来获取客户端ip
var getIp = function(req) {
  var ip = req.headers['x-real-ip'] || req.headers['x-forwarded-for'] || req.connection.remoteAddres || req.socket.remoteAddress || '';
  if(ip.split(',').length>0){
    ip = ip.split(',')[0];
  }
  return ip;
};
// 指定ipv4格式
var server = app.listen(8081, '0.0.0.0',function () {
  var host = server.address().address
  var port = server.address().port
  console.log('服务启动...')
})

希望本文所述对大家node.js程序设计有所帮助。

Javascript 相关文章推荐
JavaScript 继承使用分析
May 12 Javascript
JavaScript高级程序设计 学习笔记 js高级技巧
Sep 20 Javascript
web开发人员学习jQuery的6大理由及jQuery的优势介绍
Jan 03 Javascript
Javascript算符的优先级介绍
Mar 20 Javascript
前端开发过程中浏览器版本的两种判定方法
Oct 30 Javascript
使用JavaScript链式编程实现模拟Jquery函数
Dec 21 Javascript
微信小程序 教程之模板
Oct 18 Javascript
微信小程序 滚动到某个位置添加class效果实现代码
Apr 19 Javascript
webpack-dev-server自动更新页面方法
Feb 22 Javascript
详解webpack+ES6+Sass搭建多页面应用
Nov 05 Javascript
vue实现点击追加选中样式效果
Nov 01 Javascript
javascript设计模式 ? 简单工厂模式原理与应用实例分析
Apr 09 Javascript
js针对图片加载失败的处理方法分析
Aug 24 #Javascript
js prototype和__proto__的关系是什么
Aug 23 #Javascript
帮你彻底搞懂JS中的prototype、__proto__与constructor(图解)
Aug 23 #Javascript
JS 实现发送短信验证码的“59秒后重新发送验证短信”功能
Aug 23 #Javascript
微信小程序swiper禁止用户手动滑动代码实例
Aug 23 #Javascript
Node.JS枚举统计当前文件夹和子目录下所有代码文件行数
Aug 23 #Javascript
微信小程序之侧边栏滑动实现过程解析(附完整源码)
Aug 23 #Javascript
You might like
PHP7 echo和print语句实例用法
2019/02/15 PHP
求得div 下 img的src地址的js代码
2007/02/28 Javascript
jquery仿京东导航/仿淘宝商城左侧分类导航下拉菜单效果
2013/04/24 Javascript
文本框中禁止非数字字符输入比如手机号码、邮编
2013/08/19 Javascript
JQuery插件开发示例代码
2013/11/06 Javascript
ExtJS4给Combobox设置列表中的默认值示例
2014/05/02 Javascript
jQuery实现Meizu魅族官方网站的导航菜单效果
2015/09/14 Javascript
jquery使用Cookie和JSON记录用户最近浏览历史
2016/04/19 Javascript
Bootstrap中data-target 到底是什么
2017/02/14 Javascript
bootstrap datetimepicker日期插件超详细使用方法介绍
2017/02/23 Javascript
老生常谈js-react组件生命周期
2017/05/02 Javascript
Vue-router 类似Vuex实现组件化开发的示例
2017/09/15 Javascript
详解node Async/Await 更好的异步编程解决方案
2018/05/10 Javascript
nodejs检测因特网是否断开的解决方案
2019/04/17 NodeJs
操作按钮悬浮固定在微信小程序底部的实现代码
2019/08/02 Javascript
js将URL网址转为16进制加密与解密函数
2020/03/04 Javascript
vue2路由方式--嵌套路由实现方法分析
2020/03/06 Javascript
Element-ui upload上传文件限制的解决方法
2021/01/22 Javascript
[00:43]魔廷新尊——痛苦女王至宝捆绑包
2020/06/12 DOTA
python数据结构树和二叉树简介
2014/04/29 Python
Python脚本在Appium库上对移动应用实现自动化测试
2015/04/17 Python
Python之lambda匿名函数及map和filter的用法
2019/03/05 Python
python 通过手机号识别出对应的微信性别(实例代码)
2019/12/22 Python
python实现按关键字筛选日志文件
2019/12/24 Python
基于python3实现倒叙字符串
2020/02/18 Python
如何查看python关键字
2021/01/17 Python
html5 canvas移动浏览器上实现图片压缩上传
2016/03/11 HTML / CSS
实习生自我鉴定
2013/12/12 职场文书
投标单位介绍信
2014/01/09 职场文书
宿舍违规用电检讨书
2014/02/16 职场文书
国际贸易毕业生求职信范文
2014/02/21 职场文书
经济信息系毕业生自荐信
2014/06/02 职场文书
小学生安全责任书
2014/07/25 职场文书
庆七一活动总结
2014/08/27 职场文书
经营场所证明范本
2015/06/19 职场文书
python 如何执行控制台命令与操作剪切板
2021/05/20 Python