找回密码
 立即注册

QQ登录

只需一步,快速开始

13559541953 活字格认证

高级会员

99

主题

542

帖子

1763

积分

高级会员

积分
1763

活字格认证

[已处理] ip获取

13559541953 活字格认证
高级会员   /  发表于:2020-11-5 08:31  /   查看:3410  /  回复:7
1金币
本帖最后由 13559541953 于 2020-11-5 08:33 编辑

之前在论坛找了一段获取ip的代码,现在好像不能使用了,也不报错。
  1. var RTCPeerConnection = window.RTCPeerConnection || window.webkitRTCPeerConnection || window.mozRTCPeerConnection;
  2. if (RTCPeerConnection) (function () {
  3.     var rtc = new RTCPeerConnection({iceServers:[]});
  4.     if (1 || window.mozRTCPeerConnection) {     
  5.         rtc.createDataChannel('', {reliable:false});
  6.     };
  7.    
  8.     rtc.onicecandidate = function (evt) {
  9.         if (evt.candidate) grepSDP("a="+evt.candidate.candidate);
  10.     };
  11.     rtc.createOffer(function (offerDesc) {
  12.         grepSDP(offerDesc.sdp);
  13.         rtc.setLocalDescription(offerDesc);
  14.     }, function (e) { console.warn("offer failed", e); });


  15.     var addrs = Object.create(null);
  16.     addrs["0.0.0.0"] = false;
  17.     function updateDisplay(newAddr) {
  18.         if (newAddr in addrs) return;
  19.         else addrs[newAddr] = true;
  20.         var displayAddrs = Object.keys(addrs).filter(function (k) { return addrs[k]; });
  21.         for(var i = 0; i < displayAddrs.length; i++){
  22.             if(displayAddrs[i].length > 16){
  23.                 displayAddrs.splice(i, 1);
  24.                 i--;
  25.             }
  26.         }
  27.         //获取内网IP赋值到名称为‘ip’的单元格
  28.         Forguncy.Page.getCell("ip").setValue(displayAddrs[0]);
  29.     }
  30.    
  31.     function grepSDP(sdp) {
  32.         var hosts = [];
  33.         sdp.split('\r\n').forEach(function (line, index, arr) {
  34.             if (~line.indexOf("a=candidate")) {   
  35.                 var parts = line.split(' '),      
  36.                     addr = parts[4],
  37.                     type = parts[7];
  38.                 if (type === 'host') updateDisplay(addr);
  39.             } else if (~line.indexOf("c=")) {      
  40.                 var parts = line.split(' '),
  41.                     addr = parts[2];
  42.                 updateDisplay(addr);
  43.             }
  44.         });
  45.     }
  46. })();
  47. else{
  48.     console.log("请使用主流浏览器:chrome,firefox,opera,safari");
  49. }
复制代码


附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

7 个回复

倒序浏览
最佳答案
最佳答案
用户名用户名悬赏达人认证
初级会员   /  发表于:2020-11-5 08:32:00
来自 3#
  1. $.ajax({
  2.       url: 'http://pv.sohu.com/cityjson?ie=utf-8',
  3.       dataType: "script",
  4.       success: function () {
  5.         console.log(returnCitySN);
  6.       }
  7.     });
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Simon.hu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2020-11-5 11:19:29
2#
是的,这个似乎后面被浏览器给禁止了,目前都是推荐大家使用这个方式
帮你打开活字格更神奇的功能:七十九,活字格获取局域网IP
https://gcdn.grapecity.com.cn/fo ... 6&fromuid=30160
回复 使用道具 举报
Timothy.Xu讲师达人认证 悬赏达人认证 活字格认证
论坛元老   /  发表于:2020-11-5 17:52:39
4#
感谢楼上大佬的支持~
如果您的问题已解决,请及时更新帖子的状态为“已处理”,并设置最佳答案给有帮助到你的回复;
如果您的问题还未解决,欢迎跟帖补充;
如果您有新的问题,也欢迎创建新的求助帖。
回复 使用道具 举报
13559541953活字格认证
高级会员   /  发表于:2020-11-6 09:35:15
5#

大佬 再问一下 这个获取出来的对象要怎么才能写入到一个单元格中呢
回复 使用道具 举报
Eric.Liang讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2020-11-6 11:05:38
6#
13559541953 发表于 2020-11-6 09:35
大佬 再问一下 这个获取出来的对象要怎么才能写入到一个单元格中呢

那你可以看看这里~
https://help.grapecity.com.cn/pa ... ion?pageId=46172105
回复 使用道具 举报
13559541953活字格认证
高级会员   /  发表于:2020-11-6 11:25:11
7#
Eric.Liang 发表于 2020-11-6 11:05
那你可以看看这里~
https://help.grapecity.com.cn/pages/viewpage.action?pageId=46172105

setValue我知道 但是他返回的是一个object 我直接用setValue不行啊 我要怎么把这个object里面的属性值取出来呢
回复 使用道具 举报
Lucas.Su讲师达人认证 悬赏达人认证 活字格认证
葡萄城公司职员   /  发表于:2020-11-6 11:37:15
8#
您好,您可以"."出来的,获取到属性值就可以setValue了;
像类似的前端或后端代码问题,百度一搜一大把,帮您搜了一下,您参考参考

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部