chat.facebook.com在跨域策略文件响应结束时不发送零字节

时间:2013-08-27 14:59:47

标签: facebook xmpp

我们正在实施一个Facebook应用程序,其中AS3(XIFF 3.1.0 lib)用于登录Facebook聊天,以便应用程序可以向用户的朋友发送一些通知。此时,我们遇到了有关Adobe所需的跨域策略文件的问题。问题是,当从chat.facebook.com获取跨域策略文件的请求时(使用 Security.loadPolicyFile(“xmlsocket://chat.facebook.com:5222”))从69.171.241.10以外的IP地址应答,终止策略文件的零字节在服务器的响应中丢失(例如173.252.107.17) :5222)。 根据Wireshark的说法,流程如下所示。

请求:

<policy-file-request/>
\000

响应:

<allow-access-from domain=\"*\" to-ports=\"5222\"/> 

根据Adobe建议“服务器必须发送空字节以终止策略文件,然后可能关闭连接;如果服务器未关闭连接,则Flash Player或AIR在收到终止空字节时执行此操作。“

假设:因此,Flash播放器认为没有收到任何政策文件,也没有处理xmpp登录Facebook聊天。

如果假设是正确的,那么它看起来像Facebook的错误。

任何帮助将不胜感激, 谢谢。

2 个答案:

答案 0 :(得分:0)

这似乎是Facebook的错误。我已经通过对Openfire XMPP服务器执行Wireshark链接验证了这一点(它可以正常工作)。已经报告了FB的错误:

https://developers.facebook.com/bugs/707541335928781

答案 1 :(得分:0)

好消息!!!

Facebook修复了这个错误。