页面中的Facebook应用程序:redirect_uri上的auth和错误191

时间:2012-06-06 10:28:48

标签: api facebook-apps facebook-page facebook-oauth

我正在关注this docs创建一个在页面中工作的Facebook应用,但我有一些错误。我用:

创建了一个index.php
$i = parse_signed_request($_POST['signed_request'], $mysecret);
if ($i['oauth_token']){ 
        echo "<script type='text/javascript'>
        var oauth_url = 'http://www.facebook.com/dialog/oauth/';
        oauth_url += '?client_id=MYAPPID';
        oauth_url += '&redirect_uri=' + encodeURIComponent('http://www.facebook.com/pages/null/PAGE_ID/app_MYAPPID');
        oauth_url += '&scope=email';
        window.top.location = oauth_url;
        </script>"; 
}else{
 location.href="mypage.html";
}

我的应用设置为:

Website with Facebook Login: http://mysite.com/app/
Canvas URL  : http://mysite.com/app/index.php?canvas=1
Page TAB URL: http://mysite.com/app/index.php 

此代码生成

  

API错误代码:191   API错误说明:指定的URL不归应用程序所有   错误消息:'无效的redirect_uri应用程序配置不允许给定URL。'

我也尝试使用'http://www.facebook.com/MYPAGEALIAS/app_MYAPPID'作为redirect_uri但得到同样的错误。

如果我将我的redirect_uri更改为http://apps.facebook.com/MYAPPID/index.php(但这不是我想要的!)facebook问我auth并且一切正常与firefox(IE进入无限循环)。

我在任何地方都读过,而且我正在做其他测试,但我总是出错......

1 个答案:

答案 0 :(得分:0)

将Canvas URL和页面标签URL设置为

http://mysite.com/app/