使用 Facebook JavaScript SDK 时 SPDY 出现 Chromium 错误
Posted
技术标签:
【中文标题】使用 Facebook JavaScript SDK 时 SPDY 出现 Chromium 错误【英文标题】:Chromium error with SPDY when using Facebook JavaScript SDK 【发布时间】:2013-02-11 20:22:01 【问题描述】:我使用适用于 ios 和 android 的 Facebook javascript SDK 开发了一个带有 html5 + Cordova (Phonegap) 的移动应用程序。 我是这样实现的:
FB.api(
method: 'fql.query',
query: 'SELECT uid, name, birthday_date FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me())'
,
function(response)
console.log(response);
// some code
);
它在 Android 和 iO 上运行了几个月,直到昨天才在 Android 上运行。 api调用在做,回调函数没有被调用的时候报错。
这是 Eclipse 中 LogCat 的错误:
02-26 12:27:10.526: 含铬 (22379): 外部/铬/网络/spdy/spdy_session.cc:1246: [0226/122710:WARNING:spdy_session.cc(1246)] 无法解析 Spdy 控制帧头。 02-26 12:27:10.526:D/铬(22379):未知 铬错误:-337 02-26 12:27:10.526:W/铬(22379): 外部/铬/net/spdy/spdy_session.cc:1058: [0226/122710:WARNING:spdy_session.cc(1058)] 接收到的数据帧 无效流 1 02-26 12:27:10.526: W/chromium(22379): 外部/铬/net/spdy/spdy_session.cc:1058: [0226/122710:WARNING:spdy_session.cc(1058)] 接收到的数据帧 无效流 1
似乎是安卓浏览器Chromium调用查询Facebook时出错(使用spdy协议)
有人有想法吗?
谢谢!
【问题讨论】:
【参考方案1】:看到同样的东西!
/chromium(1942): external/chromium/net/spdy/spdy_session.cc:1246: [0307/015242:WARNING:spdy_session.cc(1246)] 无法解析 Spdy 控制帧头。 W/chromium(1942):external/chromium/net/spdy/spdy_session.cc:1058: [0307/015242:WARNING:spdy_session.cc(1058)] 接收到无效流 21 的数据帧 W/chromium(1942):external/chromium/net/spdy/spdy_session.cc:1058: [0307/015242:WARNING:spdy_session.cc(1058)] 接收到无效流 21 的数据帧 D/铬(1942):未知铬错误:-337在没有太多消息的情况下找到了关于 FB 实现 SPDY 的消息: http://zoompf.com/2013/03/facebook-adds-spdy-support
很惊讶我们没有发现更多问题。
【讨论】:
【参考方案2】:-
我在相同的类似代码下也有同样的问题
情况,PhoneGap,Android
解决办法是切换到Graph API。使用 Graphi API 将进行相同的调用
FB.api('/me/friends', fields: 'id, name, gender, username' , function (response) ... );
有许多警告可能 不适用于你,但适用于我
字段名称不同。 “sex”现在是“gender”,例如 Graph API 没有 直接模拟 is_app_user 字段。如果您将其添加到列表中 字段,你会得到一个错误。有一个解决方法问 专门针对安装该应用的用户
有分页 作为回应而实施。所以响应有点结构化 不同。如果您曾经将要处理的数据传递给 您应该传递的函数不是“response”而是“response.data”,并且 关注“response.paging”,看看有没有更多的朋友要加 通过额外的调用。
【讨论】:
以上是关于使用 Facebook JavaScript SDK 时 SPDY 出现 Chromium 错误的主要内容,如果未能解决你的问题,请参考以下文章
使用 JavaScript SDK 为 Web 登录 Facebook
没有应用程序的 Facebook-javascript-sdk