如何通过代码获取页面访问令牌?

我需要为我拥有的网页生成页面访问令牌,网页将使用此令牌发布到其Facebook页面订阅源。

这就是我做的:

  1. 转到Graph API Explorer
  2. 从下拉列表中选择我的应用
  3. 单击“ Get Access Token
  4. 选择正确的权限( manage_pages / user_events

要获取Page Access Token我必须在Graph API Explorer中运行me/accounts 。 这将显示我使用新的页面访问令牌(短期(大约60分钟))到每个页面的所有页面。

Page Access Token可以正常使用我的C#代码发布到Feed。

问题

当另一个用户使用我的网页发布post时,我需要生成一个新的Page Access Token (代码中),然后用它将用户post发布到网站的Facebook提要。 问题是我显然不能在那里授予post,所以我该如何处理?

我显然不能运行me/accounts (在代码中)命令来从这里获取Page Access Token

我已经查看了扩展的访问令牌,但这将持续60天,然后它将是与上面相同的问题。

你需要的是扩展页面令牌:

  • 使用manage_pagespublish_actions生成用户访问令牌
  • 生成扩展用户令牌(有效期为60天): https : //graph.facebook.com/oauth/access_token?grad_type = fb_exchange_token&client_id = [app-id]&client_secret = [app-secret]&fb_exchange_token = [ short -lived -token]
  • 使用扩展用户令牌调用/me/accounts以获取扩展页面令牌

扩展页面标记永远有效,因此您无需始终生成新标记。

来源(包括所有代币的信息): http : //www.devils-heaven.com/facebook-access-tokens/

在https://developers.facebook.com/docs/pages/access-tokens上

获取页面访问令牌

 GET /{page-id}?fields=access_token&access_token={user_access_token} 

响应将如下所示:

 { "access_token": "{your-page-access-token}", "id": "{page-id}" }