位置: 编程技术 - 正文
推荐整理分享iOS + node.js使用Socket.IO框架进行实时通信示例(nodejs apply),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:nodejs apply,node.js macos,node.js怎么用,ios 运行nodejs,iphone nodejs,node app.js,nodejs apply,node.js怎么用,内容如对您有帮助,希望把文章链接给更多的朋友!
Socket.IO是一个基于WebSocket的实时通信库,在主流平台都有很好的支持,此文主要是通过一个小例子来演示Socket.IO的使用。
基础环境搭建
新建一个文件夹(JS工程),创建一个package.json,复制以下内容并保存。
然后执行npm命令,安装我们需要的依赖(Express和Socket.IO), 请确保你电脑已经有node环境
在项目根目录也就是package.json所在的目录在终端执行以下命令
进度条读完后会多这么一个文件夹,此时Express和Socket.IO就已经安装好了,这和iOS的Cocopods差不多,以模块化进行加载。
然后新建一个index.js作为服务端,再建一个index.html作为客户端。(为了方便演示,我这里有两个客户端,一个是iOS端,一个是浏览器端)
index.html
这也是官方Demo的演示界面,UI上没做修改
代码如下
index.js
开启了一个Server,监听端口,然后回到项目根目录,在终端输入node index.js
如果出现listen 则表明服务开启成功了,此时在浏览器访问 就能看到index.html页面了
iOS客户端的集成
新建一个iOS工程,在终端cd到项目根目录创建一个Podfile文件
vim Podfile
复制以下内容
保存退出,执行命令安装依赖
pod install or pod install --verbose --no-repo-update
请确保已经有cocopods环境
iOS端的UI
使用Socket.IO
此时我们的客户端和服务端都已经有了Socket.IO的环境了,接下来就是使用它进行聊天了。
Socket.IO中事件的处理主要通过这两个方法来实现的
on方法为接收事件的方法,emit为发送事件的方法
我们的需求是让浏览器和iOS客户端进行单聊
服务端的处理
要想发送到指定的客户端,需要知道当前客户端的id(Socket.IO的id,例:3tBArlKa2fA-AAAd),但是客户端并不清楚,客户端只知道我们自己定义的id,所以我们要将Socket.IO的Id和我们自己定义的id绑定并存储起来。
客户端的处理
浏览器的处理
iOS端的处理
iOS在初始化的时候需要一个config字典,config可以配置诸如log日志输出等设置
标签: nodejs apply
本文链接地址:https://www.jiuchutong.com/biancheng/379411.html 转载请保留说明!友情链接: 武汉网站建设