繁体   English   中英

了解使用 PHP SDK 为网站 Facebook 提要生成访问令牌

[英]Understand the generation of access tokens for website Facebook feed using PHP SDK

我的总体目标是简单地将来自我的 Facebook 页面的帖子显示到网站上,但我觉得我错过了一些重要的东西,让这个看似简单的任务变得非常困难!

我已经在 Facebook Developer 中设置了我的应用程序并通过 Graph API Explorer 生成了一个测试访问令牌来测试https://developers.facebook.com/docs/reference/php/examples上列出的示例,如下所示,使用 PHP SDK。 这工作正常。

<?php

require_once __DIR__ . '/vendor/autoload.php'; 

$fb = new \Facebook\Facebook([
  'app_id' => '{your-app-id}',
  'app_secret' => '{your-app-secret}',
  'graph_api_version' => 'v5.0',
]);

try {
  $response = $fb->get('/me?fields=name,hometown', '{access-token}');
} catch(\Facebook\Exceptions\FacebookResponseException $e) {
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(\Facebook\Exceptions\FacebookSDKException $e) {
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}

$me = $response->getGraphUser();
echo 'All the data returned from the server: ' . $me;
echo 'My name is ' . $me->getName();
$hometown = $me->getHometown();
$hometown_name = $hometown->getName();
echo 'My hometown is ' . $hometown_name;

?>

但是,鉴于访问令牌将过期,我的印象是,当有人访问该网站时,我应该请求一个新令牌(假设前一个令牌已过期,并假设我将其存储以在其活动期间使用)。 这样对吗? 如果是这样,我无法弄清楚如何在这些情况下生成令牌。 7 年前就有这样的帖子( Facebook PHP SDK 处理访问令牌),但似乎无法对我正在使用的示例进行任何操作(大概是因为它是旧版本的 SDK)。

任何人都可以帮助我如何生成新令牌以允许我的基本提要工作而无需手动创建访问令牌? 当然,这只是基本的东西,但它让我感到困惑。 我已经看到使用格式 '{your-app-id}|{your-app-secret}' 来创建访问令牌的引用,但这似乎创建了一个不能完成这项工作的应用程序令牌。

任何帮助将非常感激!

谢谢!

过去我也一直在为此苦苦挣扎。 所以别担心 :) 您正在寻找的相关部分是“长期访问令牌”。 这是它的文档:

https://developers.facebook.com/docs/facebook-login/access-tokens/refreshing/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM