日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)小程序教程:微信小程序API Websocket

wx.connectSocket(OBJECT)


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

OBJECT參數(shù)說明:

參數(shù)類型必填說明最低版本
urlString開發(fā)者服務器接口地址,必須是 wss 協(xié)議,且域名必須是后臺配置的合法域名 
dataObject請求的數(shù)據(jù) 
headerObjectHTTP Header , header 中不能設置 Referer 
methodString默認是GET,有效值: OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT 
protocolsStringArray子協(xié)議數(shù)組1.4.0
successFunction接口調(diào)用成功的回調(diào)函數(shù) 
failFunction接口調(diào)用失敗的回調(diào)函數(shù) 
completeFunction接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行) 


示例代碼:

wx.connectSocket({  
  url: 'test.php',
  data:{
    x: '',
    y: ''
  },
  header:{ 
    'content-type': 'application/json'
  },  protocols: ['protocol1'],
  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錯誤。

示例代碼:

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

wx.sendSocketMessage(OBJECT)


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

OBJECT參數(shù)說明:

參數(shù)類型必填說明
dataString/ArrayBuffer需要發(fā)送的內(nèi)容
successFunction接口調(diào)用成功的回調(diào)函數(shù)
failFunction接口調(diào)用失敗的回調(diào)函數(shù)
completeFunction接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行)

示例代碼:

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接受到服務器的消息事件。

CALLBACK返回參數(shù):

參數(shù)類型說明
dataString/ArrayBuffer服務器返回的消息

示例代碼:

wx.connectSocket({
  url: 'test.php'
})

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

wx.closeSocket(OBJECT)


關閉WebSocket連接。

參數(shù)類型必填說明最低版本
codeNumber一個數(shù)字值表示關閉連接的狀態(tài)號,表示連接被關閉的原因。如果這個參數(shù)沒有被指定,默認的取值是1000 (表示正常連接關閉)1.4.0
reasonString一個可讀的字符串,表示連接被關閉的原因。這個字符串必須是不長于123字節(jié)的UTF-8 文本(不是字符)1.4.0
successFunction接口調(diào)用成功的回調(diào)函數(shù) 
failFunction接口調(diào)用失敗的回調(diào)函數(shù) 
completeFunction接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行) 

wx.onSocketClose(CALLBACK)


監(jiān)聽WebSocket關閉。

wx.connectSocket({
  url: 'test.php'
})

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

wx.onSocketClose(function(res) {
  console.log('WebSocket 已關閉!')
})

返回值:

基礎庫 1.7.0 開始支持,低版本需做 兼容處理

返回一個 SocketTask。

Bug & Tip

  1. tip: createSocket 鏈接默認和最大超時時間都是 60s
  2. tip: 網(wǎng)絡請求的 referer 是不可以設置的,格式固定為 https://servicewechat.com/{appid}/{version}/page-frame.html,其中{appid}為小程序的 appid,{version}為小程序的版本號,版本號為 0 表示為開發(fā)版。

SocketTask

基礎庫 1.7.0 開始支持,低版本需做兼容處理

WebSocket 任務,可通過 wx.connectSocket() 接口創(chuàng)建返回。

方法

SocketTask.send(OBJECT)

通過 WebSocket 連接發(fā)送數(shù)據(jù)。

OBJECT參數(shù)說明:

參數(shù)類型必填說明
dataString/ArrayBuffer需要發(fā)送的內(nèi)容
successFunction接口調(diào)用成功的回調(diào)函數(shù)
failFunction接口調(diào)用失敗的回調(diào)函數(shù)
completeFunction接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行)
SocketTask.close(OBJECT)

關閉 WebSocket 連接。

OBJECT參數(shù)說明:

參數(shù)類型必填說明
codeNumber一個數(shù)字值表示關閉連接的狀態(tài)號,表示連接被關閉的原因。如果這個參數(shù)沒有被指定,默認的取值是1000 (表示正常連接關閉)
reasonString一個可讀的字符串,表示連接被關閉的原因。這個字符串必須是不長于123字節(jié)的UTF-8 文本(不是字符)
successFunction接口調(diào)用成功的回調(diào)函數(shù)
failFunction接口調(diào)用失敗的回調(diào)函數(shù)
completeFunction接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行)
SocketTask.onOpen(CALLBACK)

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

SocketTask.onClose(CALLBACK)

監(jiān)聽 WebSocket 連接關閉事件。

SocketTask.onError(CALLBACK)

監(jiān)聽 WebSocket 錯誤。

CALLBACK返回參數(shù):

參數(shù)類型說明
errMsgString錯誤信息
SocketTask.onMessage(CALLBACK)

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

CALLBACK返回參數(shù):

參數(shù)類型說明
dataString/ArrayBuffer服務器返回的消息

網(wǎng)站標題:創(chuàng)新互聯(lián)小程序教程:微信小程序API Websocket
網(wǎng)頁路徑:http://m.5511xx.com/article/coococp.html