国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

微信小程序 網絡API Websocket詳解

2019-11-19 19:00:07
字體:
來源:轉載
供稿:網友

微信小程序 網絡API:

微信小程序 網絡API發起請求

微信小程序 網絡API 上傳、下載

微信小程序 網絡API Websocket

wx.connectSocket(OBJECT)

​ 創建一個 WebSocket 連接;一個微信小程序同時只能有一個WebSocket連接,如果當前已存在一個WebSocket連接,會自動關閉該連接,并重新創建一個WebSocket連接。

OBJECT參數說明:

參數 類型 必填 說明
url String 開發者服務器接口地址,必須是HTTPS協議,且域名必須是后臺配置的合法域名
data Object 請求的數據
header Object HTTP Header
method String 默認是GET,有效值為: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
success Function 接口調用成功的回調函數
fail Function 接口調用失敗的回調函數
complete Function 接口調用結束的回調函數(調用成功、失敗都會執行)

示例代碼:

wx.connectSocket({ url:"test.php", data:{ x:"", y:"" }, header:{  'content-type': 'application/json' }, method:"GET"})

wx.onSocketOpen(CALLBACK)

​ 監聽WebSocket連接打開事件

示例代碼:

wx.connectSocket({ url:"test.php"});wx.onSocketOpen(function(res){ console.log("WebSocket連接已打開!")})

wx.onSocketError(CALLBACK)

​ 監聽WebSocket錯誤

示例代碼:

wx.connectSocket({ url:"test.php"});wx.onSocketOpen(function(res){ console.log("WebSocket連接已打開!")})wx.onSocketError(function(res){ console.log("WebSocket連接打開失敗,請檢查!")})

wx.sendSocketMessage(OBJECT)

​ 通過WebSocket連接發送數據,需要先wx.connectSocket,并在wx.onSocketOpen回調之后才能發送。
OBJECT參數說明:

參數 類型 必填 說明
data String 需要發送的內容

示例代碼:

var socketOpen = false;var socketMsgQueue = []wx.connectSocket({ url:"test.php"});wx.onSocketOpen(function(res){ socketOpen = true; for(var i = 0 ; i < socketMsgQueue.length; i++){  sendSocketMessage(socketMsgQueue[i]) } socketMsgQueue = [];})function sendSocketMessage(msg){ if(socketOpen){ wx.sendSocketMessage({  data:msg }); }else{  socketMsgQueue.push(msg) }}

wx.onSocketMessage(CALLBACK)

​ 監聽WebSocket接受到服務器的消息事件

CALLBACK返回參數:

參數 類型 說明
data String 服務器返回的消息

示例代碼:

wx.connectSocket({ url:"test.php"});wx.onSocketMessage(function(res){ console.log("收到服務器內容:" + res.data)})

wx.closeSocket()

​ 關閉WebSocket連接

wx.onSocketClose(CALLBACK)

​ 監聽WebSocket關閉

wx.connectSocket({ url:"test.php"});//注意這里有時序問題,//如果wx.connectSocket還沒回調wx.onSocketOpen,而先調用wx.closeSocket,那么就做不到關閉WebSocket的目的//必須在WebSocket打開期間調用wx.closeSocket才能關閉wx.onSocketOpen(function(){ wx.closeSocket()})wx.onSocketClose(function(res){ console.log("WebSocket 已關閉!")})

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宣城市| 乌拉特中旗| 鹤山市| 东台市| 平度市| 兴宁市| 临江市| 天峻县| 富裕县| 柞水县| 申扎县| 类乌齐县| 渑池县| 广德县| 安岳县| 西吉县| 丹江口市| 金川县| 桦南县| 扶风县| 黎川县| 苗栗县| 冷水江市| 新昌县| 镇雄县| 宾川县| 新丰县| 正安县| 景宁| 张家界市| 汤阴县| 眉山市| 泰兴市| 徐州市| 南丰县| 花莲市| 阜新市| 永清县| 濮阳市| 宝应县| 定远县|