最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決websocket 報 Could not decode a text frame as UTF-8錯誤

 更新時間:2020年10月09日 09:54:25   作者:Gogym  
這篇文章主要介紹了解決websocket 報 Could not decode a text frame as UTF-8錯誤,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

當你使用websocket傳輸數(shù)據(jù)時,偶爾可能會出現(xiàn)下面的錯誤

websocket Could not decode a text frame as UTF-8

網(wǎng)上很多其他文章一上來就介紹什么是websocket,數(shù)據(jù)協(xié)議等等,對解決問題沒有多大幫助。

有一些文章說要改開頭數(shù)字10000001等等,很多同學不知所云。

下面說說個人的經(jīng)驗,不一定對,希望對大家有個幫助。

首先如果你使用的是相對成熟的websocket框架的話,一般不會出現(xiàn)這個問題。

而出現(xiàn)這個問題的原因,絕大部分是客戶端和服務器端的指定的 “binaryType” 不一致。

要解決問題,首先要弄清楚問題所在,我們先了解一下這個binaryType是什么:

WebSocket.binaryType 返回websocket連接所傳輸二進制數(shù)據(jù)的類型。

它有兩個值:

 "blob"  如果傳輸?shù)氖?Blob 類型的數(shù)據(jù)。

"arraybuffer"  如果傳輸?shù)氖?ArrayBuffer 類型的數(shù)據(jù)。

通常,如果不指定這個值,默認一般是:blob   顧名思義就是任意對象

正常而言,如果binaryType=blob,傳輸字符串(String)類型,一般沒有什么問題。但如果這個時候傳一個 byte[] 數(shù)組或者二進制數(shù)組,可能就會出現(xiàn)Could not decode a text frame as UTF-8 的問題。

對于websocket而言,如果直接傳輸txt文本。那么opcode一般等于1(opcode是什么可以自行百度)。而直接send byte[] 或者二進制數(shù)組時,opcode一般等于2。

當binaryType=blob時,一般會把數(shù)據(jù)直接當成字符串對象解析,此時如果傳遞的是byte[]。就會報Could not decode a text frame as UTF-8 的問題。

解決問題:

一般服務器端和客戶端指定相同的binaryType即可解決問題。如果傳遞二進制數(shù)據(jù)。指定binaryType=arraybuffer,即可獲取數(shù)據(jù)原始二進制數(shù)組,這樣不管傳遞的是什么,都不會報錯,在自行根據(jù)情況處理。

當然,如果是你直接封裝的WebSocketFrame,則opcode要指定為二進制

在js中指定:

socket.binaryType='arraybuffer'  

以上這篇解決websocket 報 Could not decode a text frame as UTF-8錯誤就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • JavaWeb實現(xiàn)用戶登錄注冊功能實例代碼(基于Servlet+JSP+JavaBean模式)

    JavaWeb實現(xiàn)用戶登錄注冊功能實例代碼(基于Servlet+JSP+JavaBean模式)

    這篇文章主要基于Servlet+JSP+JavaBean開發(fā)模式實現(xiàn)JavaWeb用戶登錄注冊功能實例代碼,非常實用,本文介紹的非常詳細,具有參考借鑒價值,感興趣的朋友一起看看吧
    2016-05-05
  • idea2020.3.3集成maven及遇到的坑(推薦)

    idea2020.3.3集成maven及遇到的坑(推薦)

    這篇文章主要介紹了idea2020.3.3集成maven的相關知識,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • 基于CopyOnWriteArrayList并發(fā)容器(實例講解)

    基于CopyOnWriteArrayList并發(fā)容器(實例講解)

    下面小編就為大家?guī)硪黄贑opyOnWriteArrayList并發(fā)容器(實例講解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • Spring實戰(zhàn)之使用注解實現(xiàn)聲明式事務操作示例

    Spring實戰(zhàn)之使用注解實現(xiàn)聲明式事務操作示例

    這篇文章主要介紹了Spring實戰(zhàn)之使用注解實現(xiàn)聲明式事務操作,結合實例形式詳細分析了spring使用注解實現(xiàn)聲明式事務相關配置、接口實現(xiàn)與使用技巧,需要的朋友可以參考下
    2020-01-01
  • Java super關鍵字用法實戰(zhàn)案例分析

    Java super關鍵字用法實戰(zhàn)案例分析

    這篇文章主要介紹了Java super關鍵字用法,結合具體案例形式分析了java super關鍵字調用父類構造方法、屬性及方法等相關操作技巧與注意事項,需要的朋友可以參考下
    2019-09-09
  • mac安裝配置jdk環(huán)境變量

    mac安裝配置jdk環(huán)境變量

    這篇文章主要為大家介紹了mac安裝配置jdk環(huán)境變量實現(xiàn)過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • 淺談Java自定義注解和運行時靠反射獲取注解

    淺談Java自定義注解和運行時靠反射獲取注解

    下面小編就為大家?guī)硪黄獪\談Java自定義注解和運行時靠反射獲取注解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • Java數(shù)據(jù)結構之優(yōu)先級隊列(堆)圖文詳解

    Java數(shù)據(jù)結構之優(yōu)先級隊列(堆)圖文詳解

    優(yōu)先級隊列是比棧和隊列更專用的結構,在多數(shù)情況下都非常有用,下面這篇文章主要給大家介紹了關于Java數(shù)據(jù)結構之優(yōu)先級隊列(堆)的相關資料,需要的朋友可以參考下
    2022-03-03
  • Java遍歷文件夾及子目錄代碼實例

    Java遍歷文件夾及子目錄代碼實例

    這篇文章主要介紹了Java遍歷文件夾及子目錄代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • java生成圖片驗證碼的示例代碼

    java生成圖片驗證碼的示例代碼

    這篇文章主要介紹了java生成圖片驗證碼的示例代碼,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2020-09-09

最新評論

泰顺县| 墨脱县| 东兴市| 讷河市| 贵德县| 绍兴市| 南岸区| 平舆县| 平江县| 来安县| 海南省| 麻阳| 辽宁省| 南川市| 大同市| 普洱| 且末县| 福鼎市| 德安县| 许昌县| 丹寨县| 奎屯市| 吉木萨尔县| 伽师县| 运城市| 资兴市| 汤阴县| 陆川县| 塔河县| 囊谦县| 四会市| 二连浩特市| 会泽县| 德格县| 桐庐县| 榆树市| 定日县| 汨罗市| 南投县| 安庆市| 昌图县|