跨域 WebSocket 连接 [Spring 启动]
Cross Domain WebSocket Connection [Spring Boot]
我有两个 spring 引导服务实例 运行。假设 'app1:8080' 和另一个实例 'app2:7070'。 'app1:8080' 正在托管一个 html 页面,它会在启动时尝试与 'app2:7070' 建立网络套接字连接。
是这样的:
var webSocket = new WebSocket("ws://app2:7070/socket-endpoint");
但我总是收到 403 错误消息。我已经阅读了有关跨域的信息,并尝试在 'app2:7070' 中注册 'app1:8080'。
但是找不到任何解决方案。
服务器技术:spring启动
客户端技术:HTML5
这很可能是跨源调用造成的。您有不同的选择来解决这个问题:
- 在两个应用程序前面放置一个像 nginx 这样的负载均衡器,并使用相同的基础为它们提供服务URL
- 从同一个应用程序提供 html(如果是小型应用程序,这是最简单的解决方案)
- 或者在您的案例中允许从 app1 在 app2 中进行跨源调用,如记录的 here
我有两个 spring 引导服务实例 运行。假设 'app1:8080' 和另一个实例 'app2:7070'。 'app1:8080' 正在托管一个 html 页面,它会在启动时尝试与 'app2:7070' 建立网络套接字连接。 是这样的: var webSocket = new WebSocket("ws://app2:7070/socket-endpoint");
但我总是收到 403 错误消息。我已经阅读了有关跨域的信息,并尝试在 'app2:7070' 中注册 'app1:8080'。 但是找不到任何解决方案。
服务器技术:spring启动 客户端技术:HTML5
这很可能是跨源调用造成的。您有不同的选择来解决这个问题:
- 在两个应用程序前面放置一个像 nginx 这样的负载均衡器,并使用相同的基础为它们提供服务URL
- 从同一个应用程序提供 html(如果是小型应用程序,这是最简单的解决方案)
- 或者在您的案例中允许从 app1 在 app2 中进行跨源调用,如记录的 here