位置: 编程技术 - 正文

iOS + node.js使用Socket.IO框架进行实时通信示例(nodejs apply)

编辑:rootadmin

推荐整理分享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 + node.js使用Socket.IO框架进行实时通信示例(nodejs apply)

新建一个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 转载请保留说明!

上一篇:从零开始学习Node.js系列教程之设置HTTP头的方法示例(从零开始的基础篇)

下一篇:nodejs和C语言插入mysql数据库乱码问题的解决方法(nodejs来一打c++扩展)

  • 房屋租赁印花税怎么算
  • 减免的增值税如何计算
  • 保税仓发货的商品,每个人的年度消费限额是
  • 应付利息增加会计分录
  • 预计负债的三个基本要素
  • 最近的火车票代售点
  • 增值税进项税额不予抵扣的项目包括
  • 代扣代缴公积金有返还吗
  • 增值税与普通发票的关系
  • 公司美元账户收到美元要交税吗
  • 房地产经纪公司经营范围
  • 汇算清缴后发放的工资
  • 进出口经营权什么意思
  • 退休人员再任职个人所得税
  • 高新企业产品开发的折旧费用可以税前扣除吗?
  • 投资税收抵免
  • 购入需要安装的固定资产会计科目
  • 发票开了收不到钱
  • 增值税未抵扣进项税
  • 无偿获得固定资产的会计处理
  • 第二季度的利润表报错了,怎么重新报
  • 利息资本化的时点
  • 自然人独资属于什么经济性质
  • 怎么免费获取百度文库的付费文档
  • pniopcacexe是什么进程
  • 外籍人员个人所得税政策2023规定
  • mac重装macos
  • 零售企业退货分录
  • ds file是干什么的
  • 乌鲁米耶湖春季湖水更深
  • vue3.0 element ui
  • 什么是融资租赁型校园贷
  • 非城市公交企业管理办法
  • vue父子组件加载顺序
  • 企业新增股东投标流程
  • 天堂之路歌曲
  • 补税的分录
  • 企业在什么情况下会被列入经营异常
  • 冲销进项税
  • 【AIGC】6、Segment Anything | Meta 推出超强悍可分割一切的模型 SAM
  • html span标签作用
  • 装饰工程公司施工一般包括哪些内容?
  • 同事写了一个责任链模式,bug 无数...
  • 申报个税是不是就必须交社保
  • php运行乱码怎么办
  • sqlite3 top的查询及limit语法介绍
  • 编制科目余额表的方法
  • 企业会计准则无形资产土地摊销
  • 汇兑损益的现金流量
  • 应付利息什么时候确认收入
  • 公司债券属于负债吗
  • 企业所得税季度申报表营业收入怎么填写
  • 收到货款发货了没开发票怎么入账
  • 留存收益怎么做
  • 支出记账凭证单手写
  • 免征的增值税如何处理
  • 按次缴纳的个人所得税
  • 高速公路通行费抵扣税率
  • 销售折扣怎么制定
  • 出口退税进项税都抵扣了怎么办
  • 《实施条例》第二十七条
  • 弥补以前年度亏损怎么算
  • 小企业会计准则以前年度损益调整
  • mysql指定查询
  • win10重大更新
  • apt-get update错误
  • linux中的rm是什么意思
  • freebsd使用
  • mac硬盘的常见问题及解决
  • windows8装 .NET 3.5 时出现0x800F081F错误解决方法
  • 富文本编辑器模板
  • 好用的shell终端
  • jquery示例
  • nodejs indexof
  • androids翻译
  • android英语
  • 深入理解计算机系统 电子书
  • 安卓Android下载
  • 长春市征收中心
  • 2020年个税截止时间
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设