记websocket遇到的问题以及解决方法

记websocket遇到的问题以及解决方法,第1张

        在本文中我使用的websocket框架是FaceBook提供的SocketRocket框架,在此不再为此进行过多的介绍,网上websocket介绍很全,如: SRWebSocket源码浅析  ,还有理解websocket的文章: WebSocket原理  等。本文着重叙述在使用WebSocket与服务器对接时遇到的问题。

        1、连接失败,错误信息:  Error Domain=NSPOSIXErrorDomain Code=61 "Connection refused" UserInfo={_kCFStreamErrorCodeKey=61, _kCFStreamErrorDomainKey=1}

        解析:61错误是:服务器端口没打开

        解决办法:检查服务器是否开启端口。若服务器使用的是别人的服务器,使用各种抓包软件抓一下是否在连接websocket前使用post或者get方法请求一遍,模拟一下发送的参数,看看是否将其端口开启。

        2、连接成功,立刻断开,断开信息: code:1001 reason :Stream end encountered wasclean:0

        解析:1001,表示“离开”(going away),例如服务器关闭或浏览器导航到其他页面

        解决办法:检查socket初始化方法,与socket协议进行比较(抓包连接情况),使用

- (id)initWithURLRequest:(NSURLRequest*)request protocols:(NSArray*)protocols allowsUntrustedSSLCertificates:(BOOL)allowsUntrustedSSLCertificates方法初始化socket对象。在protocols数组中装着协议内容,如:_protocolsArray = @[@"XXX"]其中,XXX为抓包出来的protocol内容,如图所示:

        3、连接成功,有收到心跳信息,然后断开,断开信息: code:1001 reason :Stream end encountered wasclean:0

        解析:1001,离开。在收到心跳包的情况下,出现断开,这种情况只有服务器发送心跳包给你,你没有回复服务器,服务器默认你离开了。

        解决方法:回复心跳包给服务器,心跳包一问一答的对话方式保持socket连接。

        至此,前两个小问题都解决好了,这两个小问题卡了我快一周的时间,记录一下。

参考文档: WebSocket关闭连接

                     WebSocket_API的使用

礼包中心、新服页面和礼包网站都可以获得激活码。

1、礼包中心

之前新区活动页面领取的礼包就是礼包中心里的礼包,这个每个月都会更新,玩家在每个月1号都可以在这里领取新的激活码,注意是通用的激活码,主要没过期,多个角色都可以重复使用,换个账号、换个区都是可以的。

2、新服页面

这个是新出的礼包,玩家进入新区活动页面,左下角会有领取社群礼包提示,点击后扫码进入群,这个需要回复服务器 种族 城市,进去以后就私信或者@管理员,找对方要礼包码,官方会给你最新礼包码。

3、礼包网站

首先进入琵琶网发号中心,注册登陆后能免费领取里面所有礼包,搜索大话西游(不加手游),然后找相关游戏礼包,点击抢号就能获得兑换码了。领取成功后进去游戏在福利-激活码界面兑换,这个是分享给安卓玩家的,苹果玩家还是老样子等级满足要求系统自动发邮件。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/104190.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-10
下一篇2023-03-10

发表评论

登录后才能评论

评论列表(0条)

    保存