FLEX BOSH 连接Openfire 报Error 404 Invalid SID 的问题

因项目需要,IM必须支持Socket,Http(s)-BOSH多种方式的连接,所以研究了一遍XIFF的代码,下载Sparkweb demo代码。接着,纠结的事来了:登录完成后,返回Error 404 Invalid SID 。反反复复研究了XMPPBOSHConnection.as,终于发现问题所在

OUTCOMING 出去@192.168.66.11,但INCOMING回来的<item jid=winters_huang@kssp.google.com> ,知道是域名搞的鬼,把openfire 的系统属性 xmpp.domain 改为域名,同时把服务器的安全证书删除(之前是以IP生成的)并重新生成,重启openfire,Sparkweb使用 kssp.google.com  连接,一切OK,Openfire的会话列表又可以看到用户在线了。

另外,不知XIFF的代码为什么没有把pauseSession 的定时器start,我改为在handleLogin 事件中 setTimeout(pauseSession ,5000,11),即5秒后,每11秒活动一次Session。

后话:

1)此时抛了一个异常  BindExtension.as 第67行 报 Unknown element: resource,再研究下,忽略掉。

2)进入用户搜索,抛异常 Error: BOSH Error - item-not-found,连接被terminal。

 

 

ps: 使用jwchat(一个急于Ajax的XMPP客户端,完全正常,无解)

另外要说明一点就是不能使用localhost作为 xmpp.domain,在windows上也BOSH没有连接成功,包括jwchat

 

 

在笔记本上调试了吧,问题来了,搞不懂。36:24.609 [INFO] INCOMING <body xmlns='http://jabber.org/protocol/httpbind'><iq xmlns="jabber:client" type="result" id="iq_7" from="huanghuorong@huanghr" to="huanghuorong@huanghr/sparkweb"><vCard xmlns="vcard-temp"/></iq></body>

20:36:24.625 [INFO] PollServer...

20:36:24.625 [INFO] Polling

20:36:24.625 [INFO] OUTGOING <body sid="f5171ed1" rid="506561" xmlns="http://jabber.org/protocol/httpbind" />

20:36:44.656 [INFO] INCOMING <body xmlns="http://jabber.org/protocol/httpbind"></body>

20:36:44.656 [INFO] OUTGOING <body sid="f5171ed1" rid="506562" xmlns="http://jabber.org/protocol/httpbind"><iq type="set" id="iq_13"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"><resource>sparkweb</resource></bind></iq></body>

20:36:44.671 [INFO] INCOMING <body xmlns='http://jabber.org/protocol/httpbind'><stream:error xmlns:stream="http://etherx.jabber.org/streams"><conflict xmlns="urn:ietf:params:xml:ns:xmpp-streams"/></stream:error></body>

20:36:44.671 [INFO] PollServer...

20:36:44.671 [INFO] Polling

20:36:44.671 [INFO] OUTGOING <body sid="f5171ed1" rid="506563" xmlns="http://jabber.org/protocol/httpbind" />

20:36:44.703 [ERROR] Error: service-unavailable - Remote Server Error

20:36:44.718 [ERROR] Error: Unknown HTTP Error - Error #2032: Stream Error. URL: http://huanghr:7070/http-bind/

 

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值