我有一个用PHP制作的web应用程序,当我提交一个特定的表单时,我想发布到我的Facebook粉丝页面。您可以看到以下代码:
$appId = "...";
$appSecret = "...";
$version = "v2.5";
$fb = new Facebook'Facebook([
'app_id' => $appId,
'app_secret' => $appSecret,
'default_graph_version' => $version,
]);
$accounts = $fb->get("/me/accounts");
$pages = $accounts->getGraphEdge()->asArray();
有了这个代码,我得到了FacebookSDKException
,即You must provide an access token.
我还没有找到一种只使用程序生成访问令牌的方法https://developers.facebook.com/tools/explorer.我的作曲家:
"require": {
"facebook/php-sdk-v4" : "~5.0"
}
如何通过程序/自动获取访问令牌?或者你建议什么替代方案?
以下是我所做的。开始使用JS SDK的代码在这里
如果response.status===已连接(在代码中找到该表达式),则获得具有以下代码的访问令牌:
var accessToken = response.authResponse.accessToken;
然后重定向到PHP代码所在的页面,并在url中附加access_token。。。像这样:
window.location = "http://localhostfb_test.php?access_token="+accessToken;
现在在服务器中使用这样的令牌。
$user_profile = $fb->get('/me',$_GET['access_token']);
此处
在令牌是可移植的一节中,明确提到令牌可以从客户端运送到服务器这就是我在这里所做的。