2011-11-17 65 views
0

我真的很困扰这整个OAuth的事情。我有一个链接,我想弹出一个对话框,将消息发布到用户的墙上。这里是我的代码...需要生成OAuth令牌才能打开对话框

<a href="https://graph.facebook.com/dustinmcgrew/feed? 
link=http://developers.facebook.com/docs/reference/dialogs/& 
picture=http://fbrell.com/f8.jpg& 
name=Facebook%20Dialogs& 
caption=Reference%20Documentation& 
description=Using%20Dialogs%20to%20interact%20with%20users.& 
message=Facebook%20Dialogs%20are%20so%20easy!"><img src="images/share.gif" /></a> 

当我点击它会产生这个错误的链接...

{ 
    "error": { 
     "message": "An access token is required to request this resource.", 
     "type": "OAuthException" 
    } 
} 

我如何获得这个访问令牌,是有什么地方需要以后用它做我知道了? Facebook的文档真的让我感到厌烦。它给你提供的示例代码只能完成IMO所需的一半。

我正在使用PHP SDK。

回答

0

Facebook's Dialogs documentation

每一个对话框有一个方法的名称和参数。对话框的URL总是以http://www.facebook.com/dialog/开头,后面跟着对话框和参数的名称。

您被要求提供OAuth访问令牌的原因是因为Facebook thinks you are trying to access your wall位于https://graph.facebook.com/dustinmcgrew/feed

Authentication documentation中包含获取OAuth令牌(您需要了解是否构建Facebook应用程序)。在PHP SDK还提供了一些方法(如getAccessToken,使这个过程更容易

+0

我想你给我的网址的那部分,我得到这个错误.. '{ “错误”:{ “消息”: “(#803)您请求的某些别名不存在:对话框” “type”:“OAuthException” } }' – Dustin

+0

它应该是http://www.facebook.com/dialog/feed而不是https ://graph.facebook.com/dialog/feed。你的URL也缺少redirect_uri参数,你应该阅读http://developers.facebook.com/docs/reference/dialogs/feed/,特别是“Direct URL示例“部分。 – Martey

+0

好吧我现在有这个网址,但现在它发送给我一个带有fa的登录页面cebook徽标就可以了。点击转到facebook.com后,出现对话框。 Grrr :( – Dustin