Spring - WebSocket - Origin' null'因此不允许访问

时间:2018-04-16 15:34:27

标签: java spring websocket

我目前正在为内部和外部请求开发Web Socket。但是,在尝试通过Chrome命令测试双向连接时,我收到以下错误:

  

"起源' null'因此不允许访问。"

Web套接字配置:

@Configuration
@EnableWebSocketMessageBroker
public class SocketConfig implements WebSocketMessageBrokerConfigurer{

    public void configureMessageBroker(MessageBrokerRegistry config) {
        config.enableSimpleBroker("/topic");
        config.setApplicationDestinationPrefixes("/bidirectional");
    }

    public void registerStompEndpoints(StompEndpointRegistry registry) {    
        //register a new endpoint
        registry.addEndpoint("/blueframe").setAllowedOrigins("/*");
        registry.addEndpoint("/blueframe").setAllowedOrigins("/*").withSockJS();
    }
 }

JavaScript连接:

var socket = new SockJS('http://192.168.137.23:8080/blueframe');
stompClient = Stomp.over(socket);
    stompClient.connect({}, function (frame) {
        setConnected(true);
        console.log('Connected: ' + frame);
    });

我已经尝试查看其他帖子但没有结果。

1 个答案:

答案 0 :(得分:1)

首先我使用Webservices退出,而不是开始使用RabbitMQ进行双向通信。

关于Web套接字配置,我不是唯一遇到此问题的人,因此我找到了一个特殊的解决方案:降级Spring版本或使用Socket处理程序而不是StompEndpointRegistry接口。