我遇到的问题是,每当我尝试从同一局域网上的外部计算机连接到我的spring启动应用程序时,我的WebSocket连接就会超时。我还应该问一下Spring Boot是否是正确的工具,以便只托管我的app服务器。我的实际网页将由另一台机器托管,这可能部分是问题所在。
这就是我的Java代码:
@Configuration
@EnableWebSocket
@EnableAutoConfiguration
public class CinderApp implements WebSocketConfigurer {
final static String DEFAULT_APP_SERVER_URL = "http://localhost:8080";
@Bean
public MessageHandler callHandler() {
return new MessageHandler();
}
@Override
public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
registry.addHandler(callHandler(), "/call");
}
在浏览器客户端,我有javascript:
var ws = new WebSocket('ws://' + "192.168.1.112:8080" + '/call');
其中192.168.1.112是ip spring boot应用程序服务器。
此连接在超时期限后失败并返回故障。我想知道如何从外部ip浏览器(在同一局域网上)与spring boot app服务器建立websocket连接。