javascript - js与局域网
PHP中文网
PHP中文网 2017-04-10 15:09:33
[JavaScript讨论组]

最近遇到一个问题,通过js获取ip地址可以使用这个方法:

$.get('http://api.hostip.info/get_html.php', function(data) {
  var tempData = data.split("\n");
  for (var i in tempData) {
    var val = tempData[i].split(":");
    if (val[0] === "IP") {
      console.log(val[1]);
    }
  }
});

那有没有可能使用js来获取本机局域网内的地址,就是路由器下面192开头的那种,如果没有那需要通过什么来辅助才能够获取到?

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(4)
迷茫

这段代码本质是上是让浏览器请求某个服务器,然后服务器返回这次链接中的ip.src,获得ip地址的。

其实,运行在浏览器中的js是不能够直接访问电脑中的绝大部分资源的。这个主要是为了安全性,你想如果一个网页上的代码可以访问你电脑里的文件那是不是就很危险的。
如果你非要实现这样的功能,就需要开发浏览器插件(不是扩展,扩展和插件是有区别的),但要求是用户必须安装你的插件。

不是运行在浏览器中的js是可以做到直接读取本机的ip地址的,比如nodejs

怪我咯

只能通过后端语言来获取了,要么你整整node

天蓬老师

直接获取局域网貌似不太行。不过你可以创建一个服务器页面。然后通过ajax请求这个地址。从服务器返回出这个IP。
类似通过访问ip138来解析里面的自己公网IP地址一样

阿神

js是有权限限制的,所以这个做不到,还有一些其他方面也很难实现,如操作本地文件,如果要做的话可以用后台语言或者nodejs。而且在用后台技术获取这个ip的时候,我们获取到的是路由器的(如果有的话),而不是真正分配给我们的。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号