微信小程序 聊天室简单实现

utils文件夹下websoctet.js文件
var url = 'ws://地址端口';
function connect(user, func) {
wx.connectSocket({
url: url,
header: {"content-type":'application/x-www-form-urlencoded'}
});
wx.onSocketOpen(function (res) {
send('{"type":"login","client_name":"'+user.nickName+'","room_id":"1"}')
});
//接受消息
wx.onSocketMessage(func);
}
//发送消息
function send(msg) {
wx.sendSocketMessage({ data: msg });
}
module.exports = {
connect: connect,
send: send
}
具体页面.js文件内容:
var websocket = require('../../utils/websocket.js');
//事件处理函数
add: function (e) {
websocket.send('{"type":"say","from_client_id":"'+user.nickName+'","to_client_id":"all","content":"'+this.data.message+'"}')
},
onLoad: function () {
var that = this
//调用应用实例的方法获取全局数据
app.getUserInfo(function (userInfo) {
user = userInfo;
websocket.connect(user, function (res) {
text = that.encodeStr(res.data) + "\n";
console.log(res)
that.setData({
text: text
});
// websocket.send('{"type":"pong"}');
})
})
},
下面方法很好玩,因为使用的服务器 是开源的PHP服务器,所以微信小程序接收到的聊天室中文内容是ASCII编码,所以经过此方法可以转换。
encodeStr: function (str) {
var character = str.split("\\u");
var native1 = character[0];
for (var i = 1; i < character.length; i++) {
var code = character[i];
native1 += String.fromCharCode(parseInt("0x" + code.substring(0, 4)));
if (code.length > 4) {
native1 += code.substring(4, code.length);
}
}
return native1
},
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# 微信小程序
# 聊天室
# 小程序
# 小程序实现聊天室
# 微信小程序实现聊天室功能
# 微信小程序实现聊天室
# 详解微信小程序开发聊天室—实时聊天
# 支持图片预览
# 微信小程序websocket聊天室的实现示例代码
# 微信小程序实现简单聊天室
# 希望能
# 谢谢大家
# 开源
# 很好玩
# 应用实例
# 发送消息
# form
# urlencoded
# www
# content
# application
# type
# room_id
# nickName
# msg
# onSocketMessage
# client_name
# res
# onSocketOpen
相关文章:
制作公司内部网站有哪些,内网如何建网站?
如何在万网开始建站?分步指南解析
c# 在高并发下使用反射发射(Reflection.Emit)的性能
移民网站制作流程,怎么看加拿大移民官网?
娃派WAP自助建站:免费模板+移动优化,快速打造专业网站
建站之星备案是否影响网站上线时间?
定制建站是什么?如何实现个性化需求?
广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?
广东企业建站网站优化与SEO营销核心策略指南
建站之星代理如何获取技术支持?
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?
如何快速完成中国万网建站详细流程?
Python如何创建带属性的XML节点
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
宝塔建站助手安装配置与建站模板使用全流程解析
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
活动邀请函制作网站有哪些,活动邀请函文案?
网站制作大概多少钱一个,做一个平台网站大概多少钱?
如何选择最佳自助建站系统?快速指南解析优劣
如何通过FTP空间快速搭建安全高效网站?
网站制作软件有哪些,制图软件有哪些?
宝塔面板创建网站无法访问?如何快速排查修复?
高防服务器租用指南:配置选择与快速部署攻略
大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?
如何基于云服务器快速搭建个人网站?
网站制作难吗安全吗,做一个网站需要多久时间?
建站之星如何保障用户数据免受黑客入侵?
如何高效完成独享虚拟主机建站?
已有域名和空间如何快速搭建网站?
广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?
高端网站建设与定制开发一站式解决方案 中企动力
宁波免费建站如何选择可靠模板与平台?
行程制作网站有哪些,第三方机票电子行程单怎么开?
php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】
如何构建满足综合性能需求的优质建站方案?
威客平台建站流程解析:高效搭建教程与设计优化方案
网站制作中优化长尾关键字挖掘的技巧,建一个视频网站需要多少钱?
c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】
教学网站制作软件,学习*后期制作的网站有哪些?
,在苏州找工作,上哪个网站比较好?
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
个人摄影网站制作流程,摄影爱好者都去什么网站?
定制建站流程步骤详解:一站式方案设计与开发指南
建站之星3.0如何解决常见操作问题?
详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)
,想在网上投简历,哪几个网站比较好?
c# await 一个已经完成的Task会发生什么
建站之星备案流程有哪些注意事项?
网站制作网站,深圳做网站哪家比较好?
企业微网站怎么做,公司网站和公众号有什么区别?
*请认真填写需求信息,我们会在24小时内与您取得联系。