亲注册登录道勤网-可以查看更多帖子内容哦!(包涵精彩图片、文字详情等)请您及时注册登录-www.daoqin.net
您需要 登录 才可以下载或查看,没有账号?立即注册
x
如何用 JavaScript 获取 IP 地址 直接获取 - WebRTC API
- async function getIP() {
- const configuration = {
- iceServers: [
- {
- urls: ['stun:stun.l.google.com:19302']
- }
- ]
- };
- const peerConnection = new RTCPeerConnection(configuration);
- const iceCandidate = await new Promise((resolve) => {
- peerConnection.onicecandidate = (e) => {
- if (e.candidate && e.candidate.type === 'srflx') {
- resolve(e.candidate.address);
- }
- };
- });
- peerConnection.close();
- return iceCandidate;
- }
复制代码
- navigator.mediaDevices.getUserMedia()
- async function getIP() {
- const mediaStream = await navigator.mediaDevices.getUserMedia({ video: false, audio: false });
- const peerConnection = new RTCPeerConnection();
- const sender = peerConnection.addTrack(mediaStream.getTracks()[0], mediaStream);
- const iceCandidate = await new Promise((resolve) => {
- peerConnection.onicecandidate = (e) => {
- if (e.candidate && e.candidate.type === 'srflx') {
- resolve(e.candidate.address);
- }
- };
- });
- sender.stop();
- peerConnection.close();
- return iceCandidate;
- }
复制代码通过服务器代理 向服务器发送请求,服务器响应中包含 IP 地址。 - async function getIP() {
- const response = await fetch('/get-ip');
- const data = await response.json();
- return data.ip;
- }
复制代码注意事项 - WebRTC API 和 navigator.mediaDevices.getUserMedia() 只能在安全连接(HTTPS)上使用。
- 服务器代理方法需要后端支持。
- 获取到的 IP 地址可能是本地 IP 地址,而不是外部 IP 地址。
道勤主机提供365天*24小时全年全天无休、实时在线、零等待的售后技术支持。竭力为您免费处理您在使用道勤主机过程中所遇到的一切问题!
如果您是道勤主机用户,那么您可以通过QQ【792472177】、售后QQ【59133755】、旺旺【诠释意念】、微信:q792472177免费电话、后台提交工单这些方式联系道勤主机客服!
如果您不是我们的客户也没问题,点击页面最右边的企业QQ在线咨询图标联系我们并购买后,我们为您免费进行无缝搬家服务,让您享受网站零访问延迟的迁移到道勤主机的服务! |