我正在尝试在springBoot应用程序上创建webSocket。这是配置类:
@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {
@Override
public void registerStompEndpoints(StompEndpointRegistry registry) {
registry.addEndpoint("/ws").setAllowedOrigins("*").withSockJS();
}
@Override
public void configureMessageBroker(MessageBrokerRegistry config) {
config.enableSimpleBroker("/sub");
config.setApplicationDestinationPrefixes("/send");
}
@Override
public void configureWebSocketTransport(WebSocketTransportRegistration registry) {
}
@Override
public void configureClientInboundChannel(ChannelRegistration registration) {
}
@Override
public void configureClientOutboundChannel(ChannelRegistration registration) {
}
@Override
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
}
@Override
public void addReturnValueHandlers(List<HandlerMethodReturnValueHandler> returnValueHandlers) {
}
@Override
public boolean configureMessageConverters(List<MessageConverter> messageConverters) {
return true;
}
}
现在来自AngularJS,我正在尝试使用SockJS和Stomp连接到websocket
var socket = new SockJS('/api/ws');
var stompClient = Stomp.over(socket);
stompClient.connect({}, function (frames) {
stompClient.subscribe('/subs/hello', function (data) {
console.log(data);
});
});
当我打开控制台时,我收到此消息:
admin-components.js:112173与'wss://proxy.beta.corp.payment21.com/api/ws/135/hwq2yv3q/websocket'的WebSocket连接失败:WebSocket握手期间出错:意外的响应代码:502] >
[30秒后,我得到了:
VM333 sockjs.min.js:2未捕获的错误:SockJS不兼容!主站点使用:“ 1.4.0”,iframe:“ 1.0.0”。在s(VM333 sockjs.min.js:2)
再过30秒:
并且正在运行...
当我进入网络以查看框架中的详细信息时,它会说
(操作码-1)
这里是什么问题?是spring配置还是SockJS?
我正在尝试在springBoot应用程序上创建webSocket。这是配置类:@Configuration @EnableWebSocketMessageBroker公共类WebSocketConfig实现WebSocketMessageBrokerConfigurer {...
基于Spring documentation,支持的客户端SockJS版本为1.0.x