我用java实现了一个http服务器(glassfish grizzly)。
如果我向 localhost:3000/api/... 提交 REST GET,我会按预期收到响应。
如果我使用我的 IP (192.168.0.100:3000/api...) 提交 REST GET,我会收到“无响应错误”。
当我在同一网络中的另一台计算机(192.168.0.200)上启动该java应用程序时,行为完全相同。对 192.168.0.100:3000/api... 的 GET 请求也会导致“无响应错误”。
我错过了什么吗?
配置 GlassFish 以使用正确的 HTTP 侦听器。
https://docs.oracle.com/cd/E19776-01/820-4495/ggnfu/index.html
例如,HTTP 监听器可以通过指定 IP 地址 0.0.0.0 来监听主机给定端口上所有配置的 IP 地址。或者,HTTP 侦听器可以在使用相同端口时为每个侦听器指定唯一的 IP 地址。
要么在地址
0.0.0.0
上定义一个侦听器以侦听主机的所有地址,或者更具体地告诉它仅侦听地址 192.168.0.100
。
您面临的问题是cors限制:确保您的API服务器配置为允许来自您正在使用的域或IP地址的请求。如果CORS配置不正确,浏览器可能会阻止来自不同来源的请求。您还可以从 Chrome 网上商店下载允许 cors 扩展。谢谢