目录

一、连接wx.connectSocket

二、wx.onSocketOpen和wx.onSocketError

三、wx.onSocketMessage

四、wx.sendSocketMessage

五、wx.closeSocket

六、wx.onSocketClose


一、连接wx.connectSocket

示例:

wx.connectSocket({url: 'xxx.com',data:{x: '',y: ''},header:{ 'content-type': 'application/json'},method:"GET"
})

这里要注意url中的接口不是http://.xxx或者https://.xxx开头的,而是以ws://xxx.com或者wss://.xxx开头的,要不然就会连接失败

二、wx.onSocketOpen和wx.onSocketError

他们是监听监听wx.connectSocket的连接成功与否的

示例:

     //连接成功wx.onSocketOpen((res) => {console.log('WebSocket 成功连接', res)})//连接失败wx.onSocketError((err) => {console.log('websocket连接失败', err);})

三、wx.onSocketMessage

这里是接收服务器的消息的(也就是聊天时对面发来的消息)

示例:

//连接WebSocket
wx.connectSocket({url: 'xxx.com',data:{x: '',y: ''},header:{ 'content-type': 'application/json'},method:"GET"})wx.onSocketOpen((res) => {console.log('WebSocket 成功连接', res)wx.onSocketMessage(function(res) {console.log('收到服务器内容:', res)//不需要考虑如何触发,当服务器发送消息时自动接收})})

四、wx.sendSocketMessage

//这是发送消息的事件sendSocketMessage() {let msg={msg:this.data.inputVal,//这是聊天的内容toUser:this.data.user1.id//这是聊天的id}wx.sendSocketMessage({data: JSON.stringify(msg),//这里根据后台的格式发送数据,好像这个需要转换成字符串。success:(res)=>{console.log("消息发送成功", res)},fail(res) {console.log("消息发送失败", res)}})
},

五、wx.closeSocket

关闭WebSocket连接。

六、wx.onSocketClose

监听WebSocket关闭。

wx.connectSocket({url: 'test.php'
})//注意这里有时序问题,
//如果 wx.connectSocket 还没回调 wx.onSocketOpen,而先调用 wx.closeSocket,那么就做不到关闭 WebSocket 的目的。
//必须在 WebSocket 打开期间调用 wx.closeSocket 才能关闭。
wx.onSocketOpen(function() {wx.closeSocket()
})wx.onSocketClose(function(res) {console.log('WebSocket 已关闭!')
})

微信的聊天室功能(websocket)相关推荐

  1. 原生JavaScript+WebSocket+nodejs实现聊天室功能

    码字不易,有帮助的同学希望能关注一下我的微信公众号:Code程序人生,感谢!代码自用自取. WebSocket也是前端非常重要的技术栈. 现在各种网站.App.小程序都伴有即时通信的功能.WebSoc ...

  2. SpringBoot +WebSocket实现简单聊天室功能实例

    SpringBoot +WebSocket实现简单聊天室功能实例) 一.代码来源 二.依赖下载 三.数据库准备(sql) 数据库建表并插入sql 四.resources文件配置 application ...

  3. php++仿网页版微信,vue+web端仿微信网页版聊天室功能

    一.项目介绍 基于Vue2.5.6+Vuex+vue-cli+vue-router+vue-gemini-scrollbar+swiper+elementUI等技术混合架构开发的仿微信web端聊天室- ...

  4. 如何在微信小程序里实现聊天室功能?

    准备工作 下载环信 小程序demo+sdkgit clone https://github.com/easemob/webim-weixin-xcx创建一个文件夹,将 demo 中的文件 comps. ...

  5. 微信直播聊天室架构演进

    聊天室概述 随着直播和类直播场景在微信内的增长,业务对临时消息通道的需求日益增长,聊天室组件应运而生.聊天室组件是一个基于房间的临时消息信道,主要提供消息收发.在线状态统计等功能. 1500w在线的挑 ...

  6. 微信直播聊天室单房间1500万在线的消息架构演进之路

    1.引言 随着直播和类直播场景在微信内的增长,这些业务对临时消息(在线状态时的实时消息)通道的需求日益增长,直播聊天室组件应运而生.直播聊天室组件是一个基于房间的临时消息信道,主要提供消息收发.在线状 ...

  7. 微信团队分享:微信直播聊天室单房间1500万在线的消息架构演进之路

    本文由微信开发团队工程师" kellyliang"原创发表于"微信后台团队"公众号,收录时有修订和改动. 1.引言 随着直播和类直播场景在微信内的增长,这些业务 ...

  8. 前端+node实现一个简单的聊天室功能

    简单的实现一个聊天室功能 目录 前言 一.了解一下WebSocket 我们有了http协议,为什么会出现ws呢? ws出现之前,我们是怎么实现双向通信的呢? 二.使用到的websocket库 三.聊天 ...

  9. h5移动端聊天室|仿微信界面聊天室|h5多人聊天室

    今年的FIFA世界杯甚是精彩,最近兴致高涨就利用HTML5开发了一个手机端仿微信界面聊天室,该h5聊天室采用750px全新伸缩flex布局,以及使用rem响应式配合fontsize.js,页面弹窗则是 ...

最新文章

  1. 2021-2027年中国智能马桶盖行业市场研究及前瞻分析报告
  2. python工程计算软件库_python中常用的科学计算工具包
  3. linux的cpu信息怎么理解,理解Linux下的CPU信息:lscpu cpuinfo
  4. java与python多态的区别_如果未调用父构造函数(与Java不同),多态性在Python中如何工作? - java...
  5. java框架mybatis配置文件总结一
  6. oracle 11 启动不了,求助,oracle 11g 启动失败,求大神帮忙看看,谢谢
  7. 天文学家用AI探测宇宙:借助图像识别探索银河系中的红巨星
  8. java 形参 实参_java 形参是父类实参是子类的问题
  9. python连载第12篇 for循环 源码+ 答案
  10. 雷军正式入驻B站,或为小米新品直播带货做准备
  11. 【网络安全学习笔记3】侧信道攻击以及技术概览
  12. 完全相同的4个小矩形如图所示放置_使用全站仪测量的小知识,全是干货!
  13. 关于平面设计海报怎么做?——黎乙丙
  14. postman中从url中获取各参数值
  15. BAPI_FIXEDASSET_OVRTAKE_CREATE 固定资产批导(历史遗留、折旧)
  16. Python+Flask(2)--通过flask paginate解决列表分页问题
  17. Moviepy音视频剪辑:视频添加雪花飘落特效
  18. CSDN产品周报第17期|首页推荐流支持快捷修改兴趣标签,问答支持展示gif
  19. 深井泵房无人值守系统 泵站无人值守平台 智慧水务
  20. 使用HTML5 SVG绘制的多层饼形图(纯javascript)

热门文章

  1. 联想企业科技集团发布系列白皮书,“新IT”为高质量发展注入“新动能”
  2. 使用 Python 构建随机图像生成器 Flutter 应用程序 Flet
  3. 解决度盘下载慢的问题(用百度自家的产品,正规渠道)
  4. springboot学校快递站点管理系统的设计与实现 毕业设计-附源码111544
  5. 桔子浏览器抢票专版官方版
  6. 与中断有关的MCS-51特殊功能寄存器
  7. tq210 开发板 刷linux,TQ210 安装samba服务器和交叉编译链
  8. android chromium内核,Chromium内核版马上到,Edge安卓测试版提供新旧浏览器同步选项...
  9. 基于51单片机带显示器的音乐盒设计
  10. 两码一号:两码定义原则