解決webSocke客戶端鏈接服務端返回400錯誤

緣由:

nginx使用了轉發,頭信息沒設置全,問題出如今nginx的配置文件linux

 

解決辦法:

修改nginx.conf配置文件,在linux終端敲入vim /etc/nginx/nginx.conf,找到location這個位置,配置文件以下所示:nginx

location / {
            proxy_http_version 1.1; 
            proxy_set_header Upgrade $http_upgrade;                
            proxy_set_header Connection "upgrade";    
}

 

配置完成以後,重啓nginx就能夠了!web

 

順便說一下webSocket跨域問題解決:

設置AllowedOrigins:*vim

@Configuration
@EnableWebSocket//啓動websocket
public class WebSocketConfig implements WebSocketConfigurer {

    @Override
    public void registerWebSocketHandlers(WebSocketHandlerRegistry webSocketHandlerRegistry) {
        webSocketHandlerRegistry.addHandler(getWebSocketHandler(),"/websocket/*").setAllowedOrigins("*").addInterceptors(new ChatIntercepter());
    }
    @Bean
    public TextMessageHandler getWebSocketHandler(){
        return new TextMessageHandler();
    }
}

 

感謝閱讀!跨域

相互陪伴,共同成長。websocket

相關文章
相關標籤/搜索