位置: IT常识 - 正文

JS获取本机IP地址的方法(js获取本机ip地址)

编辑:rootadmin
JS获取本机IP地址的方法

推荐整理分享JS获取本机IP地址的方法(js获取本机ip地址),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript获取本机ip,js获取本机ipv4地址,js怎么获取本机ip,js获取ip和mac,js获取本机ip地址,js获取ip和mac,js获取本机ip地址,js获取本机ip地址,内容如对您有帮助,希望把文章链接给更多的朋友!

1.获取本机IP地址方法1:

if(typeof window != 'undefined'){

    var RTCPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;

    if (RTCPeerConnection) (()=>{

        var rtc = new RTCPeerConnection()

        rtc.createDataChannel(''); //创建一个可以发送任意数据的数据通道

        rtc.createOffer( offerDesc => { //创建并存储一个sdp数据

        rtc.setLocalDescription(offerDesc)

    }, e => { console.log(e)})

    rtc.onicecandidate =(evt) => { //监听candidate事件

        if (evt.candidate) {

            console.log('evt:',evt.candidate)

JS获取本机IP地址的方法(js获取本机ip地址)

            let ip_rule = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/

            var ip_addr = ip_rule.exec(evt.candidate.candidate)[1]

            console.log('ip_addr:',ip_addr)   //打印获取的IP地址

        }}

    })()

    else{console.log("没有找到")}

}

2.获取本机IP地址方法2

//获取用户本地ip的方法const getUserIP= (onNewIP)=> { let MyPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection; let pc = new MyPeerConnection({ iceServers: [] }); let noop = () => { }; let localIPs = {}; let ipRegex = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/g; let iterateIP = (ip) => { if (!localIPs[ip]) onNewIP(ip); localIPs[ip] = true; }; pc.createDataChannel(''); pc.createOffer().then((sdp) => { sdp.sdp.split('\n').forEach(function (line) { if (line.indexOf('candidate') < 0) return; line.match(ipRegex).forEach(iterateIP); }); pc.setLocalDescription(sdp, noop, noop); }).catch((reason) => { }); pc.onicecandidate = (ice) => { if (!ice || !ice.candidate || !ice.candidate.candidate || !ice.candidate.candidate.match(ipRegex)) return; ice.candidate.candidate.match(ipRegex).forEach(iterateIP); };} getUserIP((ip) => { state.ip=ip console.log(ip) console.log(state.ip) });

如果电脑没获取到,基本上是因为浏览器限制了,解除方法如下:

解决方案:

火狐(FireFox) 删除隐藏IP

浏览器输入 about:config

搜索配置 media.peerconnection.enabled 改为false ( 刷新程序,IP正常显示 )

谷歌(Chrome) 删除隐藏IP

浏览器输入:chrome://flags/#enable-webrtc-hide-local-ips-with-mdns

把 Anonymize local IPs exposed by WebRTC 设置为 disabled ( 刷新程序,IP正常显示 )

eage浏览器删除隐藏ip

浏览器输入: edge://flags/#enable-webrtc-hide-local-ips-with-mdns

把 Anonymize local IPs exposed by WebRTC 设置为 disabled ( 刷新程序,IP正常显示 )

本文链接地址:https://www.jiuchutong.com/zhishi/298830.html 转载请保留说明!

上一篇:大数据现在找工作难么(大数据找工作好找吗)

下一篇:vue+springboot使用文件流实现文件下载(vue springboot)

  • 微信超额限制怎么解除(微信超额限制怎么开通微众)

    微信超额限制怎么解除(微信超额限制怎么开通微众)

  • 微信消息显示更多怎么全部显示(微信消息显示更多信息)

    微信消息显示更多怎么全部显示(微信消息显示更多信息)

  • soul注销了还可以恢复吗(soul注销了还可以用原来的号码吗)

    soul注销了还可以恢复吗(soul注销了还可以用原来的号码吗)

  • siri无法语音唤醒怎么办(siri怎么唤醒)

    siri无法语音唤醒怎么办(siri怎么唤醒)

  • 魅族17防水防尘等级(魅族18pro防尘防水)

    魅族17防水防尘等级(魅族18pro防尘防水)

  • 华为nova5分屏功能怎么使用(华为nova5z分屏)

    华为nova5分屏功能怎么使用(华为nova5z分屏)

  • 苹果tt语音上不了麦(苹果tt语音上不了网了)

    苹果tt语音上不了麦(苹果tt语音上不了网了)

  • 快手申诉没短信通知(快手申诉没短信怎么办)

    快手申诉没短信通知(快手申诉没短信怎么办)

  • 华为有无pro的差别(华为手机带pro与不带pro有什区别)

    华为有无pro的差别(华为手机带pro与不带pro有什区别)

  • 苹果uc无法看网页视频(苹果uc无法看网页怎么办)

    苹果uc无法看网页视频(苹果uc无法看网页怎么办)

  • usb分线器带供电和不带的有什么区别(usb分线器供电口有什么用)

    usb分线器带供电和不带的有什么区别(usb分线器供电口有什么用)

  • 快手小店备案编号是什么意思(快手小店备案编号怎么填写化妆品)

    快手小店备案编号是什么意思(快手小店备案编号怎么填写化妆品)

  • 应用软件可以独立运行吗(应用软件可以独立于操作系统运行吗)

    应用软件可以独立运行吗(应用软件可以独立于操作系统运行吗)

  • wan被称为什么网(网络被誉为什么)

    wan被称为什么网(网络被誉为什么)

  • 探探怎么找回解除好友(探探怎么找回解除配对)

    探探怎么找回解除好友(探探怎么找回解除配对)

  • flash插件是什么(flash插件是什么用安装吗?)

    flash插件是什么(flash插件是什么用安装吗?)

  • vivoy93怎么弄语音助手(vivoy93jovi语音怎么开启)

    vivoy93怎么弄语音助手(vivoy93jovi语音怎么开启)

  • 华为移动服务有何用(华为移动服务是什么功能)

    华为移动服务有何用(华为移动服务是什么功能)

  • ipados怎么分屏(ipad如何实现分屏)

    ipados怎么分屏(ipad如何实现分屏)

  • 微信发送键失灵怎么办(微信发送键没反应)

    微信发送键失灵怎么办(微信发送键没反应)

  • Win7系统右键菜单没有“删除”怎么办?(win7系统右键菜单太多怎么办)

    Win7系统右键菜单没有“删除”怎么办?(win7系统右键菜单太多怎么办)

  • internal/modules/cjs/loader.js:985 throw err; ^ Error: Cannot find module ‘node:util‘(internet笔记)

    internal/modules/cjs/loader.js:985 throw err; ^ Error: Cannot find module ‘node:util‘(internet笔记)

  • 如何解决win10专业版软件不兼容的问题?(win10专业版问题)

    如何解决win10专业版软件不兼容的问题?(win10专业版问题)

  • npm,nodejs如何升级(nodejs怎么更新版本)

    npm,nodejs如何升级(nodejs怎么更新版本)

  • 工资超5000已申报税额为0,可以退税吗
  • 销项税额和进项税额发票怎么区别
  • 家庭保洁服务价格表
  • 投资子公司亏损如何入账
  • 资产负债表不平的原因有哪些
  • 销项抵扣需要缴纳城建税吗
  • 企业增加注册资本需要缴纳什么税
  • 捐赠纳税调增金额怎么算
  • 社会团体收费项目有哪些
  • 材料收到发票未到怎么记账
  • 老板垫付员工工资怎么写条子
  • 安全费用支出范围包括
  • 异地设立分公司可以独立核算吗
  • 自收自支事业单位是什么意思
  • 车辆增值税抵扣到什么时候结束
  • 建筑企业之前的工作内容
  • 公司和个人大额往来怎么办
  • 工作服清洗费要交个税那
  • 老板报销没有发票怎么办
  • 毛利润率的计算公式举例
  • 工程结算收入和应收账款的区别
  • 什么情况下可以取保候审
  • 非房地产企业转让旧房土地增值税
  • 收到的运输发票要交印花税吗?
  • 采用支付手续费方式委托代销商品
  • 协会会费计入什么会计科目二级
  • laravel 微服务架构
  • 退货红冲发票要收回原发票吗
  • 线程是什么意思
  • 租赁费和场地租赁费区别
  • 什么是摊余成本计量的金融资产
  • 存货盘亏能否税前扣除
  • 强化税收风险意识
  • 月末结转本年利润怎么算
  • php time
  • c++ 每日十问3-处理数据
  • 巴伐利亚知乎
  • vue3props用法
  • pc端微信扫码支付
  • 在清算土地增值税销项时,允许扣除的土地价款包括哪些?
  • 应交税费应交增值税明细账怎么填
  • php防止sql注入的方法
  • 差额征税七种业务是什么
  • php curl_exec
  • 优化in
  • 发票认证相符什么意思
  • 10qps是多少并发
  • 07. vue3+vite+qiankun搭建微应用前端框架,并接入vue3微应用
  • javascript入门基础
  • 手把手带你做一件事
  • 购进来的样品怎么账务处理
  • 企业所得税申报表在哪里打印
  • mongodb的配置文件
  • 营业收入的相关认定
  • mysql命令大小写
  • 进项有效期
  • 银行承兑汇票包括支票吗
  • 建筑行业工程施工当月可以不结转吗
  • 辞退福利的会计分录怎么写
  • 购买的服务如何申请退款
  • 房地产开发公司是做什么的
  • 养老保险产生的利息怎么来的
  • 怎么辨别定额发票是什么项目啊
  • 国际贸易单证有什么制单要求
  • 坏账损失的核算方法包括
  • 一个简单的群规怎么写
  • cmd提示符基础知识
  • windows2000server安装过程
  • ubuntu的安装包
  • 巧用 Windows 系统控制台删除病毒文件
  • blg是什么文件
  • windows10x预览版
  • win10预览体验计划不显示
  • [置顶] 关于UNITY5.0和高通AR4.2.3在手机上白屏的问题
  • 关闭默认共享和共享文件夹
  • 批处理 输入密码
  • fastcgi iis
  • 分国分项抵免法
  • 公积金个人网上开户流程
  • 税务筹划怎么样
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设