Javascript – 只需确定浏览器连接到哪个networking

我build立了一个节点js web服务器,它在JSON文件中提供图片链接。 一个链接指的是互联网上的图像,另一个链接指的是我家服务器中的本地目录。

networking服务器是在线的,而不是在我的家庭服务器上。 为了带宽使用目的 ,Web服务器仅提供图像链接。 如果客户端通过家庭连接进行连接,则使用本地链接,如果不是,则使用互联网链接。

目前,我提供一个包含链接的JSON文件,并且始终在客户端select互联网,因为我不知道如何让客户了解他在我的本地networking上。

有什么东西存在吗? 我已经完成了有关获取路由器(第一跳),networkingssid的mac地址的研究,但似乎只能用JavaScript才能实现。

所以,基本上,这是我的设置:

家庭networking :

  • 家庭服务器(本地存储的图像)
  • 通过此连接连接的潜在客户端

网页内容:

  • Web服务器(节点js)
  • FTP(图片存储)
  • 潜在的客户端连接

在任何情况下,客户端都需要互联网连接,因为节点服务器在线。 但是,如果客户端与本地主服务器位于同一个(本地networking)networking上,则应使用本地链接获取映像。

我需要这两个解决scheme之一:

  • 客户知道他是否在我的本地networking,然后拿起良好的链接
  • Web服务器知道客户端来自哪里,并直接提供良好的链接(所以,在客户端没有问题)。 这个问题是我的networking服务器不在我的家庭networking上。

你将不得不写一些服务器端,以使其工作。

只有服务器可以告诉客户端与服务器在同一个networking上。 客户端JS根本无法访问networking信息。

你会做这样的事情:

在客户端请求上,服务器:

  • 检查客户端的连接IP是否是本地IP。
  • 如果是这样,请设置客户端可以读取的某种布尔值。
  • 然后,客户端根据该布尔值select本地或远程URL集。

select要包含在网页中的url要简单一点:

在客户端请求上,服务器:

  • 检查客户端的连接IP是否是本地IP。
  • 如果是这样,请在所请求的网页中包含本地url。 否则,包括远程url。