uniapp: WebSocket

uni.connectSocket()

1.创建一个 WebSocket 连接。

this.socketTask = uni.connectSocket({
    
    
	url: 'wss://web.******.com/wss',
	success: (res) => {
    
    
		console.log('链接成功')
	}
});

2.监听 WebSocket 连接打开事件

this.socketTask.onOpen((res) => {
    
    
	console.log('WebSocket连接已打开!');
	let data = {
    
    
		msg: '你好,测试',
		user_id: '1'
	}
	// 发送一条测试消息
	this.send(data)
});

3.通过 WebSocket 连接发送数据

send(data) {
    
    
	this.socketTask.send({
    
    
		data:data,
		success:(res=>{
    
    
			console.log(res,'发送成功')
		})
	})
},

4.监听 WebSocket 接受到服务器的消息事件

this.socketTask.onMessage(res=>{
    
    
	this.list = JSON.parse(res.data)
})

5.关闭 WebSocket 连接

close(){
    
    
	this.socketTask.close({
    
    
		success:(res=>{
    
    
			console.log(res,'已成功')
		})
	})
}

源码:

<script>
	export default {
    
    
		components: {
    
    },
		data() {
    
    
			return {
    
    
				socketTask: null,
				list:[]
			}
		},
		onLoad() {
    
    
			// 创建一个 WebSocket 连接。
			this.socketTask = uni.connectSocket({
    
    
				url: 'wss://web.******.com/wss',
				success: (res) => {
    
    
					console.log('链接成功')
				}
			});
			// 监听 WebSocket 连接打开事件
			this.socketTask.onOpen((res) => {
    
    
				console.log('WebSocket连接已打开!');
				let data = {
    
    
					msg: '你好,测试',
					user_id: '1'
				}
				// 发送一条测试消息
				this.send(data)
			});
			// 监听 WebSocket 接受到服务器的消息事件
			this.socketTask.onMessage(res=>{
    
    
				this.list = JSON.parse(res.data)
			})
		},
		methods: {
    
    
			// 通过 WebSocket 连接发送数据
			send(data) {
    
    
				this.socketTask.send({
    
    
					data:data,
					success:(res=>{
    
    
						console.log(res,'发送成功')
					})
				})
			},
			// 关闭 WebSocket 连接
			close(){
    
    
				this.socketTask.close({
    
    
					success:(res=>{
    
    
						console.log(res,'关闭成功')
					})
				})
			}
		},
	}
</script>

猜你喜欢

转载自blog.csdn.net/qq_40745143/article/details/129684067