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 相关文章推荐
Js实现当前点击a标签变色突出显示其他a标签回复原色
Nov 27 Javascript
javascript正则表达式定义(语法)总结
Jan 08 Javascript
JavaScript的ExtJS框架中数面板TreePanel的使用实例解析
May 21 Javascript
Vue组件BootPage实现简单的分页功能
Sep 12 Javascript
JS弹出窗口的运用与技巧大全
Nov 01 Javascript
JS实现的表头列头固定页面功能示例
Jan 10 Javascript
JS判断键盘是否按的回车键并触发指定按钮点击操作的方法
Feb 13 Javascript
angular ng-repeat数组中的数组实例
Feb 18 Javascript
js实现添加删除表格(两种方法)
Apr 27 Javascript
解决jquery appaend元素中id绑定事件失效的问题
Sep 12 jQuery
Vue脚手架编写试卷页面功能
Mar 17 Javascript
详解实现vue的数据响应式原理
Jan 20 Vue.js
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
PHP中strtotime函数使用方法详解
2011/11/27 PHP
str_replace只替换一次字符串的方法
2013/04/09 PHP
探讨GDFONTPATH能否被winxp下的php支持
2013/06/21 PHP
PHP实现的交通银行网银在线支付接口ECSHOP插件和使用例子
2014/05/10 PHP
javascript学习笔记(六) Date 日期类型
2012/06/19 Javascript
js实现无需数据库的县级以上联动行政区域下拉控件
2013/08/14 Javascript
jQuery及JS实现循环中暂停的方法
2015/02/02 Javascript
Javascript之深入浅出prototype
2017/02/06 Javascript
微信小程序与php 实现微信支付的简单实例
2017/06/23 Javascript
关于JavaScript中的this指向问题总结篇
2017/07/23 Javascript
vuejs2.0运用原生js实现简单拖拽元素功能
2020/08/21 Javascript
Node.js折腾记一:读指定文件夹,输出该文件夹的文件树详解
2019/04/20 Javascript
vscode调试node.js的实现方法
2020/03/22 Javascript
JS中作用域以及变量范围分析
2020/07/18 Javascript
微信小程序自定义底部弹出框动画
2020/11/18 Javascript
[02:54]辉夜杯主赛事第二日败者组 iG.V赛后采访
2015/12/26 DOTA
非递归的输出1-N的全排列实例(推荐)
2017/04/11 Python
python使用xlrd和xlwt读写Excel文件的实例代码
2018/09/05 Python
PyTorch之图像和Tensor填充的实例
2019/08/18 Python
Python中turtle库的使用实例
2019/09/09 Python
关于Tensorflow分布式并行策略
2020/02/03 Python
CSS3 Flex 弹性布局实例代码详解
2018/11/01 HTML / CSS
你常见到的runtime exception
2016/09/05 面试题
会计应届生的自荐信
2013/12/13 职场文书
工作建议书范文
2014/05/13 职场文书
校园元旦活动总结
2014/07/09 职场文书
运输企业安全生产责任书
2014/07/28 职场文书
医院合作协议书
2014/08/19 职场文书
无刑事犯罪记录证明范本
2014/09/29 职场文书
群众路线剖析材料怎么写
2014/10/09 职场文书
物价局领导班子四风问题整改措施
2014/10/26 职场文书
写给老婆的保证书
2015/02/27 职场文书
保安辞职信范文
2015/02/28 职场文书
2015年全国保险公众宣传日活动方案
2015/05/06 职场文书
暑期工社会实践报告
2015/07/13 职场文书
win10电脑双屏显示一个黑屏怎么办?win10电脑双屏显示一个黑屏解决方法
2022/07/15 数码科技