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

微信小程序 網(wǎng)絡(luò)API Websocket詳解

 更新時(shí)間:2016年11月09日 11:33:54   投稿:lqh  
這篇文章主要介紹了微信小程序 網(wǎng)絡(luò)API Websocket詳解的相關(guān)資料,需要的朋友可以參考下

微信小程序 網(wǎng)絡(luò)API:

微信小程序 網(wǎng)絡(luò)API發(fā)起請(qǐng)求

微信小程序 網(wǎng)絡(luò)API 上傳、下載

微信小程序 網(wǎng)絡(luò)API Websocket

wx.connectSocket(OBJECT)

​ 創(chuàng)建一個(gè) WebSocket 連接;一個(gè)微信小程序同時(shí)只能有一個(gè)WebSocket連接,如果當(dāng)前已存在一個(gè)WebSocket連接,會(huì)自動(dòng)關(guān)閉該連接,并重新創(chuàng)建一個(gè)WebSocket連接。

OBJECT參數(shù)說明:

參數(shù) 類型 必填 說明
url String 開發(fā)者服務(wù)器接口地址,必須是HTTPS協(xié)議,且域名必須是后臺(tái)配置的合法域名
data Object 請(qǐng)求的數(shù)據(jù)
header Object HTTP Header
method String 默認(rèn)是GET,有效值為: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT
success Function 接口調(diào)用成功的回調(diào)函數(shù)
fail Function 接口調(diào)用失敗的回調(diào)函數(shù)
complete Function 接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)

示例代碼:

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

wx.onSocketOpen(CALLBACK)

​ 監(jiān)聽WebSocket連接打開事件

示例代碼:

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

wx.onSocketError(CALLBACK)

​ 監(jiān)聽WebSocket錯(cuò)誤

示例代碼:

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

wx.sendSocketMessage(OBJECT)

​ 通過WebSocket連接發(fā)送數(shù)據(jù),需要先wx.connectSocket,并在wx.onSocketOpen回調(diào)之后才能發(fā)送。
OBJECT參數(shù)說明:

參數(shù) 類型 必填 說明
data String 需要發(fā)送的內(nèi)容

示例代碼:

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)

​ 監(jiān)聽WebSocket接受到服務(wù)器的消息事件

CALLBACK返回參數(shù):

參數(shù) 類型 說明
data String 服務(wù)器返回的消息

示例代碼:

wx.connectSocket({
 url:"test.php"
});

wx.onSocketMessage(function(res){
 console.log("收到服務(wù)器內(nèi)容:" + res.data)
})

wx.closeSocket()

​ 關(guān)閉WebSocket連接

wx.onSocketClose(CALLBACK)

​ 監(jiān)聽WebSocket關(guān)閉

wx.connectSocket({
 url:"test.php"
});

//注意這里有時(shí)序問題,
//如果wx.connectSocket還沒回調(diào)wx.onSocketOpen,而先調(diào)用wx.closeSocket,那么就做不到關(guān)閉WebSocket的目的
//必須在WebSocket打開期間調(diào)用wx.closeSocket才能關(guān)閉
wx.onSocketOpen(function(){
 wx.closeSocket()
})

wx.onSocketClose(function(res){
 console.log("WebSocket 已關(guān)閉!")
})

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

相關(guān)文章

最新評(píng)論