一个开源的实时通信跨平台框架:Socket.IO_weixin_30339969的博客-程序员宅基地

技术标签: cocoapods  网络  移动开发  

  近期项目涉及到IM功能,使用到一个好用的支持WebSocket的IM开源框架:Socket.IO ;它是一个完全由JavaScript实现、基于Node.js、支持WebSocket的协议用于实时通信、跨平台的开源框架,它包括了客户端的JavaScript和服务器端的Node.js。Socket.IO除了支持WebSocket通讯协议外,还支持许多种轮询(Polling)机制以及其它实时通信方式,并封装成了通用的接口,并且在服务端实现了这些实时机制的相应代码。Socket.IO实现的Polling通信机制包括Adobe Flash Socket、AJAX长轮询、AJAX multipart streaming、持久Iframe、JSONP轮询等。Socket.IO能够根据浏览器对通讯机制的支持情况自动地选择最佳的方式来实现网络实时应用。

  Socket.IO设计的目标是构建能够在不同浏览器和移动设备上良好运行的实时应用,如实时分析系统、二进制流数据处理应用、在线聊天室、在线客服系统、评论系统、WebIM等。目前,Socket.IO已经支持主流PC浏览器(Safari、Chrome、Firefox等)和移动平台上的浏览器(iOS平台下的Safari、Android平台下的基于Webkit的浏览器等,并提供一系列开源库用于服务端和移动应用的开发。可以说使用Socket.IO框架,我们可以方便快速的开发出一套集网页端,移动应用端,PC端的小型即时通讯系统。

    Socket.IO 开源地址:https://github.com/socketio?page=1

  

  Socket.IO-Client-Swift : 是用Swift编写的基于Socket.IO机制的开源项目,可以让我们快速的在iOS项目中集成IM功能。Swift工程中可以使用cocoapods导入,OC项目最好手工导入使用"<项目名>-Swift.h"文件,否则很有可能导致cocoapods配置文件出错。项目的具体使用方法作者在其GitHub主页上已给出说明。如果遇到使用问题可以在 http://stackoverflow.com/search?q=socket.io-client-swift 找到一些答案。

    http://www.workerman.net:2123/一个支持webSocket的开放调试平台,用:http://www.workerman.net:2120作为服务器地址可以方便的调试代码。

 

 

转载于:https://www.cnblogs.com/moyazi/p/5045552.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_30339969/article/details/98075817

智能推荐

点赞功能:用 MySQL 还是 Redis ?_里奥ii的博客-程序员宅基地

点赞功能是目前app开发基本的功能今天我们就来聊聊 点赞、评论、收藏等这些场景的db数据库设计问题,1. 我们先来看看场景的需求:a. 显示点赞数量b. 判断用户是否点过赞,用于去重,必须的判断c. 显示个人点赞列表,一般在用户中心d. 显示文章点赞列表我们先看一下头条和微博的例子头条的点赞微博的点赞这两个都是具有顶级流量的,后端肯定有复杂的架构,我们今天只谈大众化的方案。2.1 mysql方案m...

向火箭致敬!向火箭道歉_robyjeffding的博客-程序员宅基地

(火箭都是像斯科拉这样的斗士,湖人常常像奥多姆那样绵软) 再一次,向火箭脱帽致敬!再一次,NBA就是,WHERE AMAZING HAPPENS!同时,真诚的向无比顽强的火箭和矢志不渝、一直坚信火箭能把这个系列赛拖进第7场的朋友们道歉!在第5场比赛之后,我预测今天湖人将结束这个系列赛,但是我错了。火箭没有输掉15分左右,而是恰恰赢了15分球!我像你们一样喜爱这支火箭队,当他们今天赢得比

phpmyadmin用PHP调取中文,phpMyAdmin显示中文乱码的解决方法_旻言的博客-程序员宅基地

php与mysql中出现乱码一般都是文档编码的问题如 gbk,uft8,gb2312等与页面编码不一致.解决1:php.ini没有extension=php_mysql.dll碰到这个问题后一般打开phpmyadmin就会出现乱码错误,我们把php里面的libmysql.dll复制到c:\windows\system32或者c:\winnt\system32,然后重新启动电脑就行解决2:下面是我的...

【实战小项目】python开发自动化运维工具--批量操作主机_weixin_30905133的博客-程序员宅基地

有很多开源自动化运维工具都很好用如ansible/salt stack等,完全不用重复造轮子。只不过,很多运维同学学习Python之后,苦于没小项目训练,本篇演示用Python写一个批量操作主机的工具,大家空余时候可以试着写写,完善完善。1 思路分析在运维工作中,古老的方式部署环境、上线代码可能都需要手动在服务器上敲命令,不胜其烦。所以,脚本,自动化工具等还是很有必要的。我觉得一个批量操作...

bitnamigitlab_bitnami-gitlab备份与恢复_weixin_39846361的博客-程序员宅基地

备份GITLAB_HOME="/home/data/gitlab-8.14.3-0"PATH="$GITLAB_HOME/apps/gitlabci/gitlabci-runner:$GITLAB_HOME/apps/gitlab/gitlab-shell/bin:$GITLAB_HOME/redis/bin:$GITLAB_HOME/sqlite/bin:$GITLAB_HOME/python/...

第二阶段 day06 final、 权限 、内部类 、引用类型_Joker_Demon的博客-程序员宅基地

第二阶段 day06 final、 权限 、内部类 、引用类型今日内容final关键字权限内部类引用类型教学目标描述final修饰的类的特点描述final修饰的方法的特点能够说出权限修饰符作用范围说出内部类的概念能够理解引用类型作为成员变量能够理解引用类型作为方法参数能够理解引用类型作为方法返回值类型第一章 final关键字1.1 概述学习了继承后,我们知道,子类可以在父类的基础上改写父类内容,比如,方法重写。那么我们能不能随意的继承API中提供的类,改写其内容呢?显然这是

随便推点

selenium+python自动化80-文件下载(不弹询问框)【转载】_anbaduay633369的博客-程序员宅基地

转至博客:上海-悠悠前言上一篇是点弹出框上的按钮去保存文件,本篇介绍一种更加优雅的方法,加载Firefox和Chrome的配置文件,不弹出询问框后台下载。一、FirefoxProfile1.点下载的时候,如下图,如果不想让它弹出这个询问框,可以加载firefox的配置文件隐藏起来2.设置各项参数,参数可以通过在浏览器地址栏中输入about:config查看...

DM 源码阅读系列文章(十)测试框架的实现_TiDB_PingCAP的博客-程序员宅基地

作者:杨非本文为 DM 源码阅读系列文章的第十篇,之前的文章已经详细介绍过 DM 数据同步各组件的实现原理和代码解析,相信大家对 DM 的实现细节已经有了深入的了解。本篇文章将从质量保证的角度来介绍 DM 测试框架的设计和实现,探讨如何通过多维度的测试方法保证 DM 的正确性和稳定性。测试体系DM 完整的测试体系包括以下四个部分:1. 单元测试主要用于测试每个 go 模块和具体函数实现的...

三星android的one ui,基于Android 11!三星OneUI 3.0详细升级计划公布_葉楽翎的博客-程序员宅基地

本周,三星方面公布了基于Android 11的OneUI 3.0具体升级安排,其最早出现了埃及地区手机用户的三星会员APP中。2020年12月:Galaxy S20 Ultra、Galaxy S20 Plus、Galaxy S202021年1月:Galaxy Note 10 Plus、Galaxy Note 10、Galaxy S10 Plus、Galaxy S10、Galaxy S10 Lite...

mysql数据库div函数_MySQL数据库——内置函数_有赞技术团队的博客-程序员宅基地

MySQL数据库——内置函数建表并插入数据create table student(id char(36) primary key,name varchar(8) not null,age int(3) default 0,mobile char(11),address varchar(150))插入数据insert into student values ('9b4435ec-372c-456a...

css声明由什么组成,css每条声明由一个什么组成_未眠-1031的博客-程序员宅基地

在css中,每条声明由“属性”和“属性值”组成,并用分号来标识一个声明的结束,在一个样式中最后一个声明可以省略分号;所有声明被放置在一对大括号“{}”内,然后整体紧邻选择器的后面。本教程操作环境:windows7系统、CSS3版、Dell G3电脑。CSS样式及其基本语法CSS 代码可以在任何文本编辑器中打开和编辑。因此,不管读者有没有编程基础,初次接触 CSS 时会感到很简单。本节将介绍 CSS...

MS CRM 2011的自定义与开发(12)——表单脚本扩展开发(2)_dianlvkang0137的博客-程序员宅基地

之前忙于出差,累得稀里哗啦的,也没有时间更新了。现在,可以继续写文章了。言归正传。 上一篇,介绍了Microsoft Dynamics CRM中,表单开发方面的基本概念和知识,本文将继续表单脚本开发的介绍。 不同于以往的几个版本,MS CRM 2011中,将表单中的内容分为两大类,分别是界面UI管理器以及数据管理器,分别是: UI管理器:用于操纵表单中的各个HT...

推荐文章

热门文章

相关标签