facebook apprequests对话框错误“发生错误。请稍后再试。”

时间:2011-06-15 23:12:43

标签: javascript facebook dialog request

我正在尝试在我的应用中内置“邀请朋友”。我正在使用FB.ui.它似乎有效(我使用的是http://developers.facebook.com/blog/post/464/标准代码。

但是你应该向朋友发送请求的iframe只是说:“发生错误。请稍后再试。”

我没有忘记使用访问令牌。

echo '<div id="fb-root"></div>';
echo '<script src="http://connect.facebook.net/en_US/all.js">';
echo '  </script>';
echo '  <script>';
echo "    FB.init({appId:'215089721847404', cookie:true, status:true, xfbml:true});";

echo "    FB.ui({ method: 'apprequests', message: 'Here is a new Requests dialog...', display: 'iframe', access_token: '$token'});";
echo '  </script>';

fb是否停止允许来自应用内的请求对话框?或者我做错了什么?有人有其他解决方案吗?请帮忙。

更新:也许那是因为我没有放redirect_uri。现在我做了,它没有给出错误,但现在iframe只是没有停止加载... 有没有人有想法?

3 个答案:

答案 0 :(得分:0)

请求2.0很棘手,所有部分都必须与facebook想要的完全相同,否则它将无法正常工作。

请参阅http://af-design.com/blog/2011/02/17/using-facebook-requests-to-promote-a-website/以获取有关如何操作的良好示例。

答案 1 :(得分:0)

我遇到了几个不同的调用Facebook API的apprequests方法的问题,但间歇性地。

最后我发现问题是由你在内联javascript中调用FB.ui函数引起的。它有时可以正常工作,但在慢速网络上我总是遇到同样的错误。

我通过简单地将FB.ui调用放在一个函数中并使用setTimeout调用在页面完全加载后触发它来修复它,就像这样

    function callAppReq() {
        FB.ui({ method: 'apprequests', 
                title: 'My Title', 
                message: 'Here is a new Requests dialog...'},
             function(response) {
             }
        );
    }
    var t=setTimeout("callAppReq()",3000);

答案 2 :(得分:0)

另一个可能的问题是,在您配置应用域之前,Facebook不会让您发送应用请求。 没有提到应用域名FB将给你 “发生错误。请稍后再试一次facebook apprequest错误”一致

设置&gt;&gt;基本信息&gt;&gt;应用域名