在某些场合的情况下 后台可能需要前端电脑的ip 因为每台电脑的ip不一样 所有需要动态获取 翻翻网上写的很多 里面其实是很坑的 因为都是在调用闭包函数 所以执行起来是没有任何问题的 但是 你页面想拿的时候 你是没法拿到的

下面就一vue 为例子 来获取一下 思路就是传入函数的回调获取参数

1. 在utils下面建立一个getIp.js

function getUserIP(func:any){if(typeof window != 'undefined'){var RTCPeerConnection:any = window.RTCPeerConnection ||  window.webkitRTCPeerConnection;// window.mozRTCPeerConnection ||if (RTCPeerConnection) (()=>{var rtc = new RTCPeerConnection()rtc.createDataChannel(''); //创建一个可以发送任意数据的数据通道rtc.createOffer(( offerDesc:any )=> { //创建并存储一个sdp数据rtc.setLocalDescription(offerDesc)}, (e:any) => { console.log(e)})rtc.onicecandidate =(evt:any) => { //监听candidate事件if (evt.candidate) {console.log('evt:',evt.candidate)let ip_rule:any = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/var ip_addr:any = ip_rule.exec(evt.candidate.candidate)[1]// this.test(ip_addr);//调用方法把ip地址的值传出去func(ip_addr)}}})()}
}
export {getUserIP
}

2.页面使用

import { getUserIP } from "./getIp"
var Ip = ""
if(!localStorage.getItem('ipInfo')){function test(ip:any){Ip = iplocalStorage.setItem('ipInfo',ip)}getUserIP(test)
}

前端获取本地ip地址相关推荐

  1. //获取本地IP地址和对端IP地址

    1 //获取本地IP地址 2 CHAR * GetLocalIpAdrr(int fd) 3 { 4 struct sockaddr_in stHost; 5 memset(&stHost, ...

  2. 获取本地ip地址适用于windows和Linux环境

    简写版本 package com.gblfy.util;import java.net.Inet4Address; import java.net.InetAddress; import java.n ...

  3. Linux下编程获取本地IP地址的常见方法

    代码编译运行平台:Linux 64bits+g++(-m64),-m64表示生成64bits的程序. 在进行Linux网络编程时,经常用到本机IP地址.本文罗列一下常见方法,以备不时之需. 获取本机I ...

  4. android 获取wifi的ip地址吗,Android开发实现在Wifi下获取本地IP地址的方法

    本文实例讲述了Android开发实现在Wifi下获取本地IP地址的方法.分享给大家供大家参考,具体如下: 代码核心介绍: WifiManager类提供了对设备Wifi功能的管理,包括Wifi开关的打开 ...

  5. vue中获取本地IP地址

    vue中获取本地IP地址 IP地址需要通过js获取: 网上有很多查询接口可以获取到IP,查到的搜狐的比较多,我这里就用搜狐的: http://pv.sohu.com/cityjson?ie=utf-8 ...

  6. 通过js获取本地IP地址

    通过js获取本地IP地址 最近在做pc项目,需要根据用户的IP地址定位城市.IP地址需要通过js获取: 网上有很多查询接口可以获取到IP,我这里用的是搜狐的: http://pv.sohu.com/c ...

  7. VC 获取本地ip地址

    获取本地IP地址有两种做法.一种是使用gethostname函数,代码如下: [cpp] view plaincopy bool CSocketComm::GetLocalAddress(std::s ...

  8. c#获取本地ip地址网关子网掩码_教你如何修改路由器LAN口IP地址的方法

    现在绝大部分品牌或非品牌有线或无线路由器,其LAN口地址一般使用192.168.1.1或192.168.0.1网段,而使用此默认地址,既不安全,有时也不实用,比如局域网中电脑数过高,超过255台,则此 ...

  9. nodejs获取本地IP地址

    //查看本地IP地址getLocalIP() {const os = require('os');const osType = os.type(); //系统类型const ifaces = os.n ...

  10. 前端获取用户ip地址,并放在请求头上(uniapp和H5)

    今日需求: 获取用户ip地址,并在每一次请求的时候带上这个ip地址 1.如何获取用户IP地址: 获取 用户ip地址的方式有很多,各大地图的开发者平台都能找到相关的API接口地址,都很牛掰,但是我看了一 ...

最新文章

  1. c 语言 声明 定义,C/C++语言声明与定义详解
  2. mysql中sum (if),我可以在MySQL中将SUM()与IF()一起使用吗?
  3. head first Design Pattern State
  4. mysql查看锁表与解锁
  5. nrf52840 gpiote如何配置中断输入_51单片机外部中断点亮LED
  6. 仿 腾讯新闻快讯 --无缝滚动
  7. sql if 和insert_拼多多面试:Mybatis是如何实现SQL语句复用功能的?
  8. 报名倒计时 | TeaTalk 深圳站邀您共话安全云世界
  9. 机器学习实战——AdaBoost
  10. Springboot项目启动的三种方式
  11. SQL数据库学习,常用语句查询大全
  12. java架构师职责_架构师的主要职责
  13. 【数学和算法】加权平均法
  14. 我们为什么要推广经方?
  15. Groupon新变种 LevelUp:折价券
  16. matlab用抛物线族表示马鞍面,matlab画马鞍面
  17. java throw 什么意思_Java中throw和throws有什么区别?
  18. 读《证券市场基础知识》(2012)-1 [概念篇]
  19. jQuery入门实操-css操作,鼠标点击事件,页面计算器
  20. Python 实现Dijkstra(迪杰斯特拉)最短路径算法

热门文章

  1. 今天脚被蜈蚣“啃”了
  2. 基于python的客流统计_基于深度学习的客流量统计方法
  3. PXC pxc_strict_mode
  4. Unity判断机型iPad/iPhone
  5. C# Span 入门
  6. 开机预读快还是不预读快_启用预读为网页浏览提速
  7. Chrome网页下载提速小技巧
  8. python安装pytorch
  9. 电池充电电路(TP4059)详解
  10. 西游记中天庭与西天的关系