我是Facebook应用程序开发的新手。我整天都在玩“如何在页面墙上发布消息?”。我终于成功了,但每条消息都是“通过Graph API Explorer”。我试图找到如何将其更改为我的应用程序名称而没有成功。我试图看看我是否可以在api命令中强制应用程序的值,但它没有考虑到它。也许我想念一些事情:(如果有人可以提供帮助,那就太棒了!
我仍然很困惑。让我试着解释一下我想要做什么:我想在页面上(作为页面)自动发布一些在网站上定义的事件(在一种议程中)。我想,我想念的是Facebook方面的一切如何协同工作: 1.登录过程:由于应用程序将在cron中运行,因此不应显示登录对话框。 2.访问令牌:应用程序还是第一页? 3.权限:根据我的理解,我需要manage_pages(和publish_stream),但不清楚应该如何设置。
对于任何澄清,可能是一个明确的例子:o)
答案 0 :(得分:2)
您需要用户使用其中一个Login流授权您自己的应用,并授予您一个发布Permissions -
如果在您使用Graph API Explorer工具测试API时使用您检索API的帖子上显示“通过图谱API资源管理器”,您的应用就会使用您自己的应用生成的访问令牌< / p>
答案 1 :(得分:2)
好吧,我想我终于找到了做到这一点的方法。我需要页面访问代码而不是应用程序访问代码。必须在应用程序外部生成令牌作为万能令牌。
https://www.facebook.com/dialog/oauth?client_id={app_id}&redirect_uri={my_url}&scope=manage_pages,publish_stream
app_id是您的应用程序ID my_url是您的应用程序URL 范围是您要授予的权限
在重定向的网址中,您将拥有一个代码参数。复制它。
https://graph.facebook.com/oauth/access_token?client_id={app_id}&redirect_uri={my_url}&client_secret={app_secret}&code={code}
app_secret是您的应用程序密钥 代码是第1步的代码
您将获得用户访问令牌作为输出。这是一个短暂的。
https://graph.facebook.com/oauth/access_token?grant_type=fb_exchange_token&client_id={app_id}&client_secret={app_secret}&fb_exchange_token={short live access token}
将步骤2中的短暂访问令牌替换为“短暂访问令牌” 您将获得无限用户访问令牌作为输出。
https://graph.facebook.com/me/accounts?access_token={infinite user access token}
将“无限用户访问令牌”替换为您在步骤3中获得的值。
此命令将列出您管理的所有页面。输出包含“access_token”字段中所需的页面访问令牌。您可以在应用程序的任何API命令中使用此标记。
最好的是通过服务器端程序(对我来说是PHP)执行所有这些步骤,因为应用程序密钥应保持“秘密”。