0

我正在使用以下脚本在每个特定时间间隔离线时自动发布到我的 PAGE。

   $attachment2 = array('message' => 'titlexxxxx',
                'access_token'  => 'CAAEHzeckZBHABAErwFP08GdHyuJcTY7gV2kVP08GdHyuJcTY7gV2kVP08GdHyuJcTY7gV2kVP08GdHyuJcTY7gV2kVP08GdHyuJcTY7gV2kVP08GdHyuJcTY7gV2kVf6Homc7ful2koSXv72PYQeP08GdHyuJcTY7gV2kVZCKKQZBAU',
                'name' => 'titlexxxxxxxxx',
                'caption' => 'titlexxxxxxxxx',
                'link' => 'linkurllllll',
                'description' => 'dexcccc'
                 ); 

                $result = $facebook->api('/209311095776218/feed/','post',$attachment2);  // the number is the page id  

我从 facebook 图形资源管理器手动获取访问令牌,我知道这很愚蠢,但我不知道如何获得新的实时 access_token。access_token 不是每次都在变化,但它确实会发生变化,这很烦人。

我需要一个详细的例子来获得一个新的令牌......

重要提示:脚本在我离线时正在运行。

4

1 回答 1

2

您通过登录流程https://developers.facebook.com/docs/facebook-login/getting-started-web/获得新的访问令牌

例如,在 PHP 中,它很简单,例如允许用户单击结果getLoginUrl()

对于页面,您可以通过https://developers.facebook.com/roadmap/offline-access-removal/中描述的场景 5

将您的短期访问令牌扩展为长期令牌

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

在此之后请求页面访问令牌(`graph.facebook.com/PAGE_ID?fields=access_token)时,它不会过期。

于 2013-06-19T18:29:04.007 回答