2012-04-17 112 views
8

我下面这个教程http://developers.facebook.com/docs/appsonfacebook/tutorial/ ,特别在这部分的代码的Facebook的OAuth REDIRECT_URI页面标签错误

$app_id = "YOUR_APP_ID"; 

$canvas_page = "YOUR_CANVAS_PAGE_URL"; 

$auth_url = "http://www.facebook.com/dialog/oauth?client_id=" 
     . $app_id . "&redirect_uri=" . urlencode($canvas_page); 

当我进入$canvas_page作为

$canvas_page = "http://www.facebook.com/PAGE_NAME/app_APP_ID/" 

我得到一个"Error occured. Try again Later"

如果我输入Canvas Page Url,它会正确显示画布页面,但我不想那样做。

我相信它在上周工作,所以我现在不知道什么是错。

+0

当您在https://developers.facebook.com/apps上查看应用程序时,“Canvas URL”值是什么?我认为他们需要匹配。另外,我不认为你想在那里放置一个facebook.com网址,你需要在你自己的服务器上的应用程序的URL。 – chesles 2012-04-20 22:03:05

回答

0

什么是以前工作的正常工作是这样的

$canvas_page="http://www.facebook.com/pages/PAGE_NAME/PAGE_ID?sk=app_APP_ID" 

但因为我改变了应用程序的命名空间我不得不做一些像这样的事情:

$canvas_page="http://apps.facebook.com/APP_NAMESPACE/" 

,现在显示正确无误

0

在应用程序设置,尝试把TAB网​​址:

应用在Facebook上 - >画布URL

在安全URL也是

最后在这里加上斜线,但是在你的REDIRECTION中放在最后没有斜线。

7

对我来说,问题是GET请求,不知何故,似乎Facebook的要求提供GET参数,我会告诉你我是什么意思:

我有这样的:

uri = "http://www.facebook.com/pagename/app_appId"; 

当我改变了它到下面它开始工作:

uri = "http://www.facebook.com/pagename/?sk=app_appId"; 

希望这可以帮助别人,因为它帮助了我。

+0

是否记录在案?后端实际发生了什么? – xster 2012-09-24 05:10:36

+1

那么,这里https://developers.facebook.com/docs/authentication/pagetab/他们说页面标签必须是这种格式https://www.facebook.com/PAGE_USERNAME/?sk=app_YOUR_APP_ID这很容易(在我看来)犯了一个错误,并假设一个干净的网址会这样做 – 2012-09-24 15:53:52

+0

这对我有用,但文档[这里](https://developers.facebook。com/docs/reference/dialogs/oauth /)(在撰写本文时)说:“您指定的URL必须是一个URL,其中包含与您的应用设置中指定的基本域相同的URL,https格式的Canvas URL ://apps.facebook.com/YOUR_APP_NAMESPACE或页面标签表单网址** https://www.facebook.com/PAGE_USERNAME/app_YOUR_APP_ID**“ – 2013-04-24 19:53:38

相关问题