--> | iOS WebSocket长链接_IOS开发_网络编程_百人牛牛棋牌-牛牛娱乐棋牌赢现金

百人牛牛棋牌

您好,迎接脱离[百人牛牛棋牌-牛牛娱乐棋牌赢现金]浏览室  笑话大全  编程问答  问答大全  移夷易近之家  文娱之家  范文之家  源码下载  电子书籍  软件下载  专题
ASP源码.NET源码PHP源码JSP源码JAVA源码DELPHI源码PB源码VC源码VB源码Android源码
以后职位:首页 >> 群集编程 >> IOS开发 >> iOS WebSocket长链接

iOS WebSocket长链接(1/2)

泉源:群集整理     时间:2018-11-01     要害词:

本篇文章主要简介了" iOS WebSocket长链接",主要触及到方面的内容,关于IOS开发感兴趣的同砚可以参考一下: WebSocketWebSocket 是 HTML5 一种新的协定。它完成了浏览器与服务器全双工通讯,能更好的节俭服务器资源和带宽并到达实时通讯,它培植在 TC...

WebSocket

WebSocket 是 HTML5 一种新的协定。它完成了浏览器与服务器全双工通讯,能更好的节俭服务器资源和带宽并到达实时通讯,它培植在 TCP 之上,同 HTTP 一样经由历程 TCP 来传输数据,但是它和 HTTP 最大不合是:WebSocket 是一种双向通讯协定.

由于项目须要培植一个谈天室,须要经由历程长链接,和后台保持通讯,阻拦谈天,而且实时阻拦热门新闻的推送.

现在Facebook的SocketRocket应当是现在最好的关于SocketRocket应用的框架了.而且质朴易用.

应用

浅易一个项目在启动后的某个时机缘启动培植一个长链接,假定须要多个就一再再三培植.假定只需一个便可以封装为一个单例,全局应用.

可以应用podpod治理库, 在podfile中加入

pod 'SocketRocket'

百人牛牛棋牌在应用敕令行工具cd到以后工程 装配

pod install

导入头文件后便可应用.

百人牛牛棋牌为求稳固,我的做法是copy的FaceBook里SocketRocket库到项目里. -->SocketRocket地址

1.首先培植一个名为WebSocketManager的单例类,

+(instancetype)shared;

百人牛牛棋牌2.培植一个枚举,划分体现WebSocket的链接状态

typedef NS_ENUM(NSUInteger,WebSocketConnectType){
    WebSocketDefault = 0,   //初始状态,未毗连,不须要重新毗连
    WebSocketConnect,       //已毗连
    WebSocketDisconnect    //毗连后断开,须要重新毗连
};

3.培植毗连

//培植长毗连
- (void)connectServer;

4.处置赏罚赏罚毗连告成的效果;

-(void)webSocketDidOpen:(RMWebSocket *)webSocket; //毗连告成回调

5.处置赏罚赏罚毗连掉落败的效果

- (void)webSocket:(SRWebSocket *)webSocket didFailWithError:(NSError *)error;//毗连掉落败回调

6.吸收新闻

///吸收新闻回调,须要延迟和后台商定好新闻名堂.
- (void)webSocket:(SRWebSocket *)webSocket didReceiveMessageWithString:(nonnull NSString *)string

7.关闭毗连

- (void)webSocket:(SRWebSocket *)webSocket didCloseWithCode:(NSInteger)code reason:(NSString *)reason wasClean:(BOOL)wasClean;///关闭毗连回调的署理

百人牛牛棋牌8.为保持长链接的毗连状态,须要准时向后台发送新闻,就是俗称的:心跳包.

须要培植一个准时器,固准时间发送新闻.

9.链接断开情形处置赏罚赏罚:

首先断定能否是自动断开,假定是自动断开就不作处置赏罚赏罚.

假定不是自动断开链接,须要做重新毗连的逻辑.

详细代码以下:

WebSocketManager.h 中的代码

上一篇模拟微信同伙圈视频播放 下一篇:没有了

相关图片

相关文章