1.0.4 • Published 5 months ago

c-websocket v1.0.4

Weekly downloads
-
License
-
Repository
-
Last release
5 months ago

欢迎使用 c-websocket

注意事项 微信小程序需要wss开头的socket域名,需要配置socket合法域名,具体操作方法:https://mp.weixin.qq.com打开并登录 --->管理 --->开发管理 --->服务器域名 --->修改

微信小程序1.7.0 及以上版本,最多可以同时存在 5 个 WebSocket 连接。1.7.0 以下版本,一个小程序同时只能有一个 WebSocket 连接,如果当前已存在一个 WebSocket 连接,会自动关闭该连接,并重新创建一个 WebSocket 连接。

安装

// npm安装方式,插件市场导入无需执行此命令。插件市场导入地址:https://ext.dcloud.net.cn/plugin?id=22423
npm install c-websocket

使用方法

// 以下导入方式按照安装方式导入,二选一
import Socket from "@/uni_modules/c-websocket";		// 插件市场导入方法
import Socket from "c-websocket";		// npm导入方法

const testSocket = new Socket("testSocket");
testSocket.setHeartbeatParams({
	time: 10000,	// 多少毫秒发送一次心跳
	data: "心跳"		// 心跳发送内容
});
testSocket.setReconnectParams({
	count: 3,		// 重连次数
	time: 3000		// 多少毫秒重连
})
testSocket.connect({
	url: "wss://...",
	heartbeat: {
		open: true,
		time: 30000,
		data: "心跳"
	},
	onOpen: (res) => {
		// socket监听打开,需要处理的逻辑
		testSocket.send("发送一条消息给后端");
	},
	onMessage: (res) => {
		// socket接收服务端的消息,需要处理的逻辑
	},
	onClose: (res) => {
		// socket监听关闭,需要处理的逻辑
	},
	onError: (err) => {
		// socket监听错误,需要处理的逻辑
	}
})
setTimeout(() => {
	testSocket.close((res) => {
		console.log("socket关闭情况:", res);
	});
}, 10000)

API

new Socket(taskName, closeLog)的taskName和closeLog Props

创建对象

属性类型是否必填说明
taskNameString创建的socket任务名,唯一
closeLogBoolean关闭当前插件里所有的打印(console.log),默认false

new Socket().setReconnectParams(params: object)的params Props

设置重连socket参数

属性类型是否必填说明
isExecuteBoolean是否可以重连,默认true
countNumber重连次数,默认10
timeNumber多少毫秒重连一次,默认10000

new Socket().setHeartbeatParams(params: object)的params Props

设置心跳的参数

属性类型是否必填说明
openBoolean是否开启心跳,默认true
timeNumber多少毫秒发送心跳,默认30000
dataString/ArrayBuffer心跳发送的内容,默认""

new Socket().connect(params: object)的params Props

创建socket

属性类型是否必填说明
urlStringuni.connectSocket的url参数
connectParamsObjectuni.connectSocket的参数对象,注:这个属性填写url会覆盖单独设置的url属性
onOpenFunctionSocketTask.onOpen,监听 WebSocket 连接打开事件
onMessageFunctionSocketTask.onMessage,监听 WebSocket 接受到服务器的消息事件
onCloseFunctionSocketTask.onClose,监听 WebSocket 连接关闭事件
onErrorFunctionSocketTask.onError,监听 WebSocket 错误事件

new Socket().send(data, closeLog)的data和closeLog Props

给服务端发送的函数

属性类型是否必填说明
dataString/ArrayBuffer发送给服务端的内容
closeLogBoolean关闭当前这次发送内容的打印(console.log)

new Socket().close(callback)的callback Props

关闭当前socket的函数

属性类型是否必填说明
callbackFunction执行完的回调
1.0.4

5 months ago

1.0.3

5 months ago

1.0.2

5 months ago

1.0.1

5 months ago

1.0.0

5 months ago