欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringCloud-Gateway轉發(fā)WebSocket失敗問題及解決

 更新時間:2023年09月22日 09:19:58   作者:焚目圣僧渡眾生  
這篇文章主要介紹了SpringCloud-Gateway轉發(fā)WebSocket失敗問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

SpringCloud-Gateway轉發(fā)WebSocket失敗

正常調用單一服務時未出現異常

如:

當使用Gateway做轉發(fā)時出現如下錯誤

1.websocket 連接報 java.nio.channels.ClosedChannelException: null;

2.前端js連接時出現websocket failed One or more reserved bits are on: reserved1 = 0, reserved2 = 1, reserved3 = 1的錯誤。

使用spring-boot-starter-websocket搭建了websocket服務,直接用服務的IP加端口訪問是正常的,換成網關的訪問地址就報錯。

這樣的情況需要在網關過濾掉websocket的請求

在網關找到:

加上判斷,排除websocket的請求就可以了

String upgrade = exchange.getRequest().getHeaders().getUpgrade();
		if("websocket".equals(upgrade)){
			return chain.filter(exchange);
		}

如果還在報 1 中的NULL錯誤信息的話在websocket的注入時加上 subprotocols = {"protocol"} ;

這只是本地測試成功了,當部署到線上測試環(huán)境后,唉,怎么都連接不上!

后面才發(fā)現 通過nginx做了反向代理,在通過域名請求Gateway的時候沒有過濾掉請求。

發(fā)現這里 upgrade 沒有獲取到,所以一直出現:

Error during WebSocket handshake: Unexpected response code: 200

的異常,后面發(fā)現原來是nginx沒有配置,

在這里加了配置后完美解決獲取不到的問題,并包含了:

failed: Error during WebSocket handshake: Unexpected response code: 404

的異常問題~

總結

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • springboot如何配置嵌套map和list參數

    springboot如何配置嵌套map和list參數

    這篇文章主要介紹了springboot如何配置嵌套map和list參數問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • idea SpringBoot+Gradle環(huán)境配置到項目打包

    idea SpringBoot+Gradle環(huán)境配置到項目打包

    Gradle是一個基于Java應用的項目自動化構建工具,本文介紹了在IDEA中創(chuàng)建Spring Boot Gradle項目,項目配置包括init.gradle和settings.gradle,感興趣的可以了解一下
    2024-11-11
  • Java線程之間通信的幾種方式詳解

    Java線程之間通信的幾種方式詳解

    在 Java 中,線程之間的通信是通過共享內存模型來實現的,線程通過共享的對象和變量來交換數據,為了確保線程間通信的正確性,Java 提供了一系列機制來實現線程安全、同步和通信,以下是常用的幾種線程間通信的方式,以及它們的使用方法和場景,需要的朋友可以參考下
    2025-03-03
  • Maven項目外部jar包導入的實現示例

    Maven項目外部jar包導入的實現示例

    在Maven項目里,我們經常需要導入jar包依賴,本文主要介紹了Maven項目外部jar包導入的實現示例,具有一定的參考價值,感興趣的可以了解一下
    2024-08-08
  • Java聊天室之使用Socket實現傳遞圖片

    Java聊天室之使用Socket實現傳遞圖片

    這篇文章主要為大家詳細介紹了Java簡易聊天室之使用Socket實現傳遞圖片功能,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的可以了解一下
    2022-10-10
  • Mybatis往Mapper.xml文件中傳遞多個參數問題

    Mybatis往Mapper.xml文件中傳遞多個參數問題

    這篇文章主要介紹了Mybatis往Mapper.xml文件中傳遞多個參數問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Java狀態(tài)設計模式實現對象狀態(tài)轉換的優(yōu)雅方式

    Java狀態(tài)設計模式實現對象狀態(tài)轉換的優(yōu)雅方式

    Java狀態(tài)設計模式通過將對象的行為和狀態(tài)分離,使對象能夠根據不同的狀態(tài)進行不同的行為操作。它通過將狀態(tài)抽象成一個獨立的類來實現對狀態(tài)的封裝,從而簡化了復雜的條件判斷和狀態(tài)轉換
    2023-04-04
  • java?百度手寫文字識別接口配置代碼

    java?百度手寫文字識別接口配置代碼

    本文通過實例代碼給大家介紹了java?百度手寫文字識別接口配置方法,代碼簡單易懂,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2022-01-01
  • springboot枚舉類型傳遞的步驟

    springboot枚舉類型傳遞的步驟

    這篇文章主要介紹了springboot枚舉類型傳遞的步驟,幫助大家更好的理解和學習使用springboot,感興趣的朋友可以了解下
    2021-04-04
  • 利用spring?boot+WebSocket實現后臺主動消息推送功能

    利用spring?boot+WebSocket實現后臺主動消息推送功能

    目前對于服務端向客戶端推送數據,常用技術方案有輪詢、websocket等,下面這篇文章主要給大家介紹了關于利用spring?boot+WebSocket實現后臺主動消息推送功能的相關資料,需要的朋友可以參考下
    2022-04-04

最新評論