即时通讯工作在facebook集成到我的手机AS3游戏。我正在下载朋友图片,效果很好,目前不是问题。问题是,我试图检测,如果用户有剪影(默认)图片或他自己的(is_silhouette属性);Facebook的图形API函数 - 空回复
这里不用代码:
(反应[I] .ID)是一个我已经从以前的API交际得到第一
...
HasDefault(response[i].id);
...
private function HasDefault(uid:int):void{
FacebookMobile.api("/"+uid+"/picture", callbackX);
}
private function callbackX(response:Object,fail:Object):void{
if (response != null){
trace(response.url);
trace(response.is_silhouette);
}else{
trace("here goes nothing...");
}
第一件事情有效的用户ID ...此代码上面有2个的问题。第一个问题是,除非我使用绝对URL,Facebook并没有回应,所以API方法实际上是这样的:
FacebookMobile.api("https://graph.facebook.com/"+uid+"/picture", callbackX);
我不知道为什么我要在这里使用绝对URL,因为其他地方的ID /功能足够好......但这仍不是主要问题。
如果我使用绝对URL,我得到了来自Facebook的有效答复,但根据https://developers.facebook.com/docs/reference/api/using-pictures/我应该在response对象中得到response.url和response.is_silhouette。然而,我只接受空的回应对象......我开始变得绝望。
此外,我试图粘贴相同的请求到https://developers.facebook.com/tools/explorer Explorer和意外的惊喜......它返回
{
"data": {
"url": "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-frc1/somenumbers.jpg",
"is_silhouette": false
}
}
...这正是我需要的...但在应用程序中我只得到空响应对象...
对于启蒙,这是前面的问题:http://stackoverflow.com/questions/16307115/facebook-graph-api-function-empty-response – 2013-05-01 15:05:59