Facebook长期访问令牌

7
我想在我的网站上展示最新的Facebook帖子。我有一个脚本,但它需要访问令牌才能运行。
我按照以下这篇文章中提到的步骤进行操作:https://neosmart-stream.de/de/facebook/how-to-create-a-facebook-access-token/comment-page-1/#comment-617
现在我已经拥有了一个有效期为60天的访问令牌,但当我打开https://graph.facebook.com/me/accounts时,我遇到了如下错误:
{
   "error": {
      "message": "An active access token must be used to query information about the current user.",
      "type": "OAuthException",
      "code": 2500
   }
}

我的访问令牌有效期为2个月,应该可以正常工作。


仔细在调试器中检查获取到的令牌。只有当访问令牌存在问题时才会发生这个错误。你能继续使用正常的访问令牌吗? - Sahil Mittal
我已经在调试器中检查过了, 过期时间:(数字)(大约2个月) 有效:真 来源:Web使用普通访问令牌仍然可以工作。 - user1915882
2个回答

7

1:使用您的网站URL在Facebook上创建一个应用程序

2:在浏览器中运行此链接

3:访问以下网址以生成新的短期(1小时)访问令牌:

https://www.facebook.com?client_id=[APPID]&client_secret=[APPSECRET]&redirect_uri[http://APPURL]&scope=manage_pages,read_stream&response_type=token

4:将短期访问令牌发送到此处:

https://graph.facebook.com/oauth/access_token?client_id=[APP_ID]&client_secret=[APP_SECRET]&grant_type=fb_exchange_token&fb_exchange_token=[EXISTING_ACCESS_TOKEN]

5: 接下来,无论是在FB的Graph API Explorer上还是在您自己的环境中,请访问此处:https://graph.facebook.com/me/accounts?access_token=[TOKEN]

然后将令牌和 ID 粘贴到代码中,然后您将得到结果。

您可以使用FaceBook Access Token Debugger调试和验证令牌的过期日期:


谢谢(y)。这个答案仍然有效。 - Mukul Goel
我得到的访问令牌只有60天有效期。我认为每个人都想得到一个永不过期的访问令牌。 - Jamol

1
当我打开https://graph.facebook.com/me/accounts时...你需要在Graph API Explorer中打开它,并在之前的步骤中检索到的访问令牌将其附加到URL的末尾。

https://graph.facebook.com/me/accounts?access_token=XXXX


如果我将其附加到URL的末尾,输出将是:{ "data": [ ] }编辑:在Graph API Explorer中输出相同。 - user1915882
1
@user1915882请访问此链接:https://developers.facebook.com/tools/explorer/?method=GET&path=me%2Faccounts 并回复您所得到的内容。 - phwd
{ "category": "应用程序", "name": "内部网络接口", "access_token": "AAACEdEose0cBAPu2BhO66FLYa1kumLHU4g07d1tlVPzJZA5Xr5gXNIgSdPeZCZAUoUHhfyeVql6ecWvmxTKy6dyccI6GLjlXpwRNpyHeQeN68w21ySQAKFgbBOZA98QZD", "id": "189315704541822" } - user1915882
@user1915882 如果那不起作用,可以尝试重新进行身份验证流程,否则请报告错误。 - phwd

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接