获取本机IP地址[JavaScript / Node.js]
--web客户端JavaScript
<body onload="checkCookie()"></body> function getYourIP(){const RTCPeerConnection = window.RTCPeerConnection || window.webkitRTCPeerConnection || window.mozRTCPeerConnection;if (RTCPeerConnection) (function(){const rtc = new RTCPeerConnection({iceServers: []});if (1 || window.mozRTCPeerConnection){rtc.createDataChannel('', {reliable: false});}rtc.onicecandidate = function(evt){if (evt.candidate) grepSDP(`a=${evt.candidate.candidate}`);};rtc.createOffer(function(offerDesc){grepSDP(offerDesc.sdp);rtc.setLocalDescription(offerDesc);}, function(e) {console.warn('offer failed', e);});const addrs = Object.create(null);addrs['0.0.0.0'] = false;function updateDisplay(newAddr){if (newAddr in addrs) return;addrs[newAddr] = true;const displayAddrs = Object.keys(addrs).filter(function(k) {return addrs[k];});for (let i = 0; i < displayAddrs.length; i++){if (displayAddrs[i].length > 16){displayAddrs.splice(i, 1);i--;}}console.info('您的IP: ', displayAddrs[0]);}function grepSDP(sdp){sdp.split('\r\n').forEach(function(line, index, arr){if (~line.indexOf('a=candidate')){const parts = line.split(' '),addr = parts[4],type = parts[7];if (type === 'host') updateDisplay(addr);} else if (~line.indexOf('c=')){const parts = line.split(' '),addr = parts[2];updateDisplay(addr);}});}})();else {console.warn('请使用主流浏览器:chrome,firefox,opera,safari');}
}
--web服务端Node.js
const os = require('os');
module.exports ={getLocalIP : function(){const eth0 = os.networkInterfaces().eth0;let localhost = null;for (let i = 0; i < eth0.length; i++){if (eth0[i].family == 'IPv4'){localhost = eth0[i].address;}}return localhost;}
};
备注
引用作者的文章
原址
转载于:https://www.cnblogs.com/skyxing7/p/11553560.html
获取本机IP地址[JavaScript / Node.js]相关推荐
- qt获取本机全部ipv4_QT5下获取本机IP地址、计算机名、网络连接名、MAC地址、子网掩码、广播地址...
获取主机名称 /* * 名称:get_localmachine_name * 功能:获取本机机器名称 * 参数:no * 返回:QString */ QString CafesClient::get_ ...
- Go 学习笔记(79)— Go 标准库 net(获取本机IP地址)
1. 获取本机 IP 地址 package mainimport ("fmt""net" )// 获取本机网卡IP func getLocalIP() (ipv ...
- python获取本机 ip地址、mac地址(物理地址)、计算机名、硬盘序列号、CPU序列号、主板序列号、bios序列号、bios uuid号
文章目录 python获取本机IP地址.mac地址(物理地址).计算机名 物理地址 计算机名.ip地址 硬盘序列号 CPU序列号 主板序列号 bios序列号 bios uuid号 python获取本机 ...
- 快速获取本机IP地址AWK功能
有些时候,我们在应用中可能要用到通过linux命令来获取本机IP地址,方法有很多种,例如最常见的就是ifconfig 如果我想尽尽只获取IP地址,方法也有很多种 例如:获取eth0的IP信息,利用cu ...
- C#获取本机IP地址字符串
1 using System.Net;2 using System.Net.Sockets;3 4 /// <summary>5 /// 获取本机IP地址6 /// </summar ...
- python设置本机IP地址、子网掩码、DNS,获取本机IP地址、子网掩码、DNS、MAC
python设置本机IP地址.子网掩码.DNS,获取本机IP地址.子网掩码.DNS.MAC main.py """=== coding: UTF8 ==="&q ...
- Java 网络实例一(获取指定主机的IP地址、查看端口是否已使用、获取本机ip地址及主机名、获取远程文件大小)
获取指定主机的IP地址 import java.net.InetAddress; import java.net.UnknownHostException;public class GetIP {pu ...
- java获取本机ip地址_代码片段:获取系统所有IP
问题 在Windows系统中,可以支持多个网卡,比如有线的以太网卡,无线网卡,虚拟网卡等.如下图所示: 每一张网卡由不同的类型,也可以分别被用户启用或禁用. 对于单独一张给定的网卡,其IP地址可以是D ...
- Delphi如何获取本机IP地址
Delphi获取本机IP地址 //获取本机IP function TKSMsgLog.GetLocalAddress:String; typeTaPInAddr = array [0..10] of ...
最新文章
- Gear VR推出移动冒险InMind 2
- 有关CPU与内存的那些事
- 每天一道LeetCode-----将数值数组按一定顺序拼接,使得拼接的结果最大
- 基于django的视频点播网站开发-step11-后台用户管理功能...
- 每个Java开发人员应拥有的持久断点
- .NET Framework 1.1安装出现1935错误的解决办法
- 成员/方法/属性/私有
- win2003安装邮箱服务器,windows2003邮件服务器
- kubenetes 1.4的Master节点克隆并改造为node节点以及node查询问题解决
- html页面中文乱码处理
- 高度不定垂直居中_CSS垂直居中的七个方法
- 2014上海全国邀请赛 解题报告
- 20171017在线编程题
- linux 小度wifi,树莓派2小度wifi(MT7601U)驱动
- 面试风云录(03) - 与女大学生的网络对话(上)
- 苹果手机怎么投影到墙上_手机怎么投屏到投影仪上?这篇图文教程教你轻松搞定...
- qq语音聊天对方听不到我说话怎么办?
- 嵌入式平台 STM32 libqrencode 移植 二维码生成
- Android实现FM收音机
- 前端免费图标icon的使用方法和获取
热门文章
- iOS之多线程的使用和优缺点比较
- Hive SQL子句中 group by 1 是什么意思?
- LeetCode 208. 实现 Trie (前缀树) —— 提供一套前缀树模板
- 2014\Province_C_C++_B\3 李白打酒
- Broken Keyboard (a.k.a. Beiju Text)
- k近邻算法原理c语言,实验二 K-近邻算法及应用
- 每天一道LeetCode-----链表插入排序
- js利用localStorage和sessionStorage完成记住我功能
- spark从hbase读数据到存入hbase数据两种版本写法
- Linux Kernel 0.01 的编译和运行