微信小程序WebSocket 中实现发送文字,图片,语音以及WebSocket 常见问题解决方案
小程序 WebSocket 常見問題:(本文已解決的)
1.自動斷開鏈接,重連但是只能存在兩個 WebSocket 的問題。
---1兼容情況:1.1 正常聊天過一段時間 WebSocket 自動斷開后重新鏈接,并且保存之前的聊天記錄
---1兼容情況:1.2 在用戶黑屏但是沒退出小程序過一段時間時 WebSocket 自動斷開鏈接后重新鏈接,并且保存之前的聊天記錄
---1兼容情況:1.3 在聊天室的頁面,點擊右上角返回按鈕,頁面會自動執(zhí)行卸載,這個時候 WebSocket 是沒有銷毀的,再次進入時會同時存在兩個WebSocket,第三次進入就會報錯了(只能同時存在兩個 WebSocket )。
解決方案:因為需要兼容的情況比較多,解決方案可詳見代碼。具體思路就是,添加一個自動重連的開關(guān)。(必須WebSocket 銷毀以后才能新建WebSocket )根據(jù)情況判斷是否重連 WebSocket 。
2. 錄音成功,但是發(fā)送給后端接收不到語音文件。
解決辦法:在已錄制完指定幀大小的事件回調(diào)函數(shù)中, 使用 wx.arrayBufferToBase64(res.frameBuffer),把得到的arrayBuffer 轉(zhuǎn)為 Base64 再傳給后端,同時設(shè)置 signType: 'BASE64'。
3.錄音傳輸給后端時,后端BASE64 解碼失敗的問題。
解決方案:與后端確認 錄音文件的采樣率、編碼碼率、音頻格式、幀大小是否一致。
推薦設(shè)置:
總結(jié)
以上是生活随笔為你收集整理的微信小程序WebSocket 中实现发送文字,图片,语音以及WebSocket 常见问题解决方案的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ROS+科大讯飞语音识别控制机器人
- 下一篇: 使用fft计算序列的互相关函数【亟待整理