js与局域网

发布于 2022-09-01 06:45:03 字数 363 浏览 30 评论 0

最近遇到一个问题,通过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开头的那种,如果没有那需要通过什么来辅助才能够获取到?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

2022-09-08 06:45:03

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

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

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

素食主义者 2022-09-08 06:45:03

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

我做我的改变 2022-09-08 06:45:03

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

是伱的 2022-09-08 06:45:03

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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文