如何使用JS检测网络中的服务器?

时间:2017-03-24 15:52:08

标签: javascript node.js sockets socket.io detection

基本上,我想使用JavaScript(Ionic)建立点对点架构。

因为,JS无法创建套接字/ etc;必须在客户端之间引入NodeJS服务器;充当客户端之间的Socket.IO服务器。

问题在于,Socket.IO(NodeJS)服务器需要在本地网络中自动找到 - 由客户端(而不是硬编码/配置)。

有没有办法实现这样的事情;或者这种架构的替代品?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

  

有没有办法实现这样的事情;或者这种架构的替代品?

目前,您的架构正在使用浏览器应用程序以及用户需要在其网络上创建TCP连接的节点应用程序。

您可以做的是创建一个结合了Node应用程序,浏览器应用程序和浏览器本身的Electron应用程序。参见:

使用Electron,您可以像编写常规浏览器一样编写前端代码,但是您可以使用整个Node API(包括TCP套接字),这样就不需要创建单独的Node应用程序并搜索应用程序在网络中。这可以大大简化您的架构。

注意:这不是问题第一部分的答案:"如何使用JS检测网络中的服务器?"但问题的第二部分:"有没有办法实现这样的事情;或者这种架构的替代品?"使用客户端JavaScript检测本地网络上的服务器并不容易 - 实际上它甚至不可能,因为能够扫描LAN以获取活动服务的网站将成为隐私和安全的严重问题。