web应用项目引用了一个第三方地图在线API,内网电脑(且不能上外网)访问,无法显示地图
电脑A与服务器B在同一局域网中,电脑A不能访问外网,服务器B能访问外网,现有web应用项目(部署在服务器B上)引用了一个第三方地图在线API(用js写在前端的),用电脑A通过内网地址访问服务器B,发现地图不能加载,换一台能上外网的电脑C访问服务器B,地图可以加载。
请问一下,BS架构下,不是应该只与服务端(服务器B)环境有关系嘛,为什么客户机(电脑A、C)环境也会有影响?
是否也有别的可能性,不是电脑A、C网络环境的原因?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
你这个是html调用远程的js实现显示地图(或者是js调用远程的接口),所以是需要客户端能够访问外网的。
你的bs架构中,s有两个甚至多个,一个是你的服务器一个是地图接口服务商的服务器。
是不是就是说js函数调用是在服务端的,只是服务端返回给浏览器响应的html引用了一个外网的css资源,导致出现这个问题的?
回复
就好比我自己有一个博客网站,我的博客运行环境可以访问外网,但是他引用了某些外网的图片和字体和cdn的样式资源,你一台内网机器,和博客运行机器互联,但无法访问外网。你想一下你是否可以访问到你的博客的图片。
服务器负责把页面请求结果(html)发送给你,客户端浏览器对页面信息再进行渲染显示,其中的所有资源均需要你的客户端去请求加载,譬如你的问题,第三方地图可能会加载一个外网css 但返回页面的link标签的css资源链接引向外网,你的客户端没有连接外网 自然访问不了