我在使用 Facebook 时遇到了一个奇怪的问题,我目前正在使用 Phonegap 开发一个应用程序。
我遵循了这个博客的非常酷的教程http://www.drewdahlman.com/meusLabs/?p=88并对其进行了改进,使其能够使用新的 API 并允许我发布消息。
所以我使用 oAuth 与 Facebook 连接,一切正常。然后我就可以通过具有相同令牌的图形 api 发布消息。
因此,当我使用我的 Facebook 帐户(我是 Facebook 应用程序的管理员)时,我有这个完美的方法
share:function(url, success){
var req = new XMLHttpRequest();
req.open('POST', url, true);
var _interval = setTimeout(function(){
success.call(this, false);
}, 31000);
req.onreadystatechange = function() {if (req.readyState==4 && req.status==200){clearTimeout(_interval); success.call(this, true);}}
req.send(null);
return req;
},
post:function(_fbType,params, success){
var url = 'https://graph.facebook.com/me/'+_fbType+'?'+localStorage.getItem(facebook_token);
for(var key in params){
if(key == "message"){
url = url+"&"+key+"="+escape(params[key]);
}
else {
url = url+"&"+key+"="+encodeURIComponent(params[key]);
}
}
var req = Facebook.share(url, success);
},
但是,如果使用我的应用程序的不是应用程序的管理员,则连接将正常工作,但如果尝试发布机智将无法正常工作。
在我的 Facebook 应用程序中,沙盒模式被禁用。应用中心还没有审核,可能是这个问题?