codecamp

快应用 WebSocket

WebSocketFactory 

接口声明

{ "name": "system.websocketfactory" }

导入模块

import websocketfactory from '@system.websocketfactory' 
或 
const websocketfactory = require('@system.websocketfactory')

接口定义

方法

websocketfactory.create(OBJECT)

创建 websocket 实例

参数:

参数名 类型 必填 说明
url String 请求 url, 必须是 wss 或 ws 协议
header Object 请求头,header 中不能设置 Referer,User-Agent设置在1040版本开始支持
protocols StringArray 子协议组

返回值:

类型 描述
WebSocket 返回一个 WebSocket 对象,请参考 WebSocket 对象

示例:

ws = websocketfactory.create({
  url: 'ws://test:8088',
  header: {
    'content-type': 'application/json'
  },
  protocols: ['protocol']
})

WebSocket 

概述

WebSocket 对象提供了用于创建和管理 WebSocket 连接,以及可以通过该连接发送和接收数据的 API。

方法

WebSocket.send(OBJECT)

向服务器发送数据

参数:

参数名 类型 必填 说明
data String | ArrayBuffer 1030+ 发送的消息
success Function 成功回调
fail Function 失败回调

示例:

ws.send({
  data: 'send message',
  success: function() {
    console.log(`send success`)
  },
  fail: function(data, code) {
    console.log(`handling fail, code = ${code}`)
  }
})

WebSocket.close(OBJECT)

关闭当前连接

参数:

参数名 类型 必填 说明
code Number 关闭链接的状态号 ,默认 1000
reason String 关闭的原因
success Function 接口调用成功的回调函数
fail Function 接口调用失败的回调函数

示例:

ws.close({
  code: 1000,
  reason: 'close as normal',
  success: function() {
    console.log(`close success`)
  },
  fail: function(data, code) {
    console.log(`handling fail, code = ${code}`)
  }
})

属性

WebSocket.onopen

用于指定连接成功后的回调函数

参数:

参数名 类型 必填 说明
callback Function 打开连接回调

示例:

ws.onopen = function() {
  console.log(`connect open`)
}

WebSocket.onmessage

用于指定当从服务器接受到信息时的回调函数

参数:

参数名 类型 必填 说明
callback Function 服务器返回消息事件回调

callback 参数:

参数名 类型 说明
data String | ArrayBuffer 1030+ 监听器接收到的消息, 消息类型与发送类型一致

示例:

ws.onmessage = function(data) {
  console.log(`message is ${data.data}`)
}

WebSocket.onclose

用于指定连接关闭后的回调函数

参数:

参数名 类型 必填 说明
callback Function 关闭连接事件回调。

callback 参数:

参数名 类型 说明
code Number 服务器返回关闭的状态码。
reason String 服务器返回的关闭原因。
wasClean Boolean 是否正常关闭。

示例:

ws.onclose = function(data) {
  console.log(
    `onclose:data.code = ${data.code}, data.reason = ${
      data.reason
    }, data.wasClean = ${data.wasClean}`
  )
}

WebSocket.onerror

用于指定连接失败后的回调函数

参数:

参数名 类型 必填 说明
callback Function 连接错误回调

callback 参数:

参数名 类型 说明
data String 监听器接收到的消息。

示例:

ws.onerror = function(data) {
  console.log(`onerror data.data = ${data.data}`)
}

后台运行限制

无限制。

后台运行详细用法参见 后台运行脚本


快应用 数据请求
快应用 数据存储
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

快应用 参考手册

快应用 安全

快应用 声音音频

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }