uniapp做WebSocket

		首先链接的地址要先拿在websocket在线调试去调试是否能连接通 不然下面的操作就不知道错误
		// 建立websocket
		connectSocketInit() {
			// 创建一个this.socketTask对象【发送、接收、关闭socket都由这个对象操作】
			uni.connectSocket({
				// 【非常重要】必须确保你的服务器是成功的,如果是手机测试千万别使用ws://127.0.0.1:9099【特别容易犯的错误】
				// url: 'wss://'+this.$api.sellerWebsocket+'/'+this.userinfo.id,
				url: 'ws://' + this.$api.sellerWebsocket + '/' + this.userinfo.id,
				success(data) {
					console.log("websocket连接成功");
				},
			});
			// 消息的发送和接收必须在正常连接打开中,才能发送或接收【否则会失败】
			uni.onSocketOpen(function(res) {
				console.log('WebSocket连接已打开!');
			});
			uni.onSocketMessage(function(res) {
				console.log('收到服务器内容:' + res.data);
				// 语音播放 start
				const innerAudioContext = uni.createInnerAudioContext();
				innerAudioContext.autoplay = true;
				innerAudioContext.src = 'https://wzs1.oss-cn-beijing.aliyuncs.com/music.mp3';
				innerAudioContext.onPlay(() => {
					console.log('开始播放');
				});
				innerAudioContext.onError((res) => {
					console.log(res.errMsg);
					console.log(res.errCode);
				});
				//语音播放 end

			});
			// 这里仅是事件监听【如果socket关闭了会执行】
			uni.onSocketClose(function(res) {
				console.log('WebSocket 已关闭!');
			});
		},
		// 关闭websocket【必须在实例销毁之前关闭,否则会是underfined错误】
	beforeDestroy() {
		this.closeSocket();
	},
	// 关闭websocket【离开这个页面的时候执行关闭】
		closeSocket() {
			this.socketTask.close({
				success(res) {
					this.is_open_socket = false;
					console.log("关闭成功", res)
				},
				fail(err) {
					console.log("关闭失败", err)
				}
			})
		},
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Uniapp是一种跨平台的开发框架,可以同时开发iOS、Android和Web应用程序。SpringBoot是一个Java开发框架,用于快速构建独立的、基于Java的应用程序。Websocket是一种在客户端和服务器之间进行双向通信的协议。在Uniapp中,可以使用SpringBoot集成Websocket实现消息推送。 在使用Uniapp和SpringBoot集成Websocket实现消息推送时,可以按照以下步骤进行配置和实现: 1. 在SpringBoot中进行配置: a. 添加相关依赖:根据引用中的提示,配置项目的依赖。 b. 进行Websocket配置:根据引用中的提示,配置Websocket相关的参数,如监听路径等。 c. 编写测试控制层:根据引用中的提示,编写测试控制层代码,用于处理Websocket的连接和消息发送。 2. 在Uniapp中进行配置: 可以根据具体需求,在Uniapp项目中添加相关的Websocket配置,如连接地址、消息处理等。 3. 在生产环境中进行Nginx配置: 如果需要将Uniapp和SpringBoot部署到生产环境中,可以根据引用中的提示,进行Nginx的配置,以实现反向代理和负载均衡。 通过以上步骤,就可以实现Uniapp和SpringBoot的集成,使用Websocket实现消息推送功能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [【SpringBoot学习】43、SpringBoot 使用 Uniapp 集成 Websocket 实现消息推送](https://blog.csdn.net/qq_38762237/article/details/124492028)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值