我有一个Facebook应用程序应该向其用户发送一些通知。这将由一个cron完成,我找到了两种方法来获得执行此操作所需的access_token
:
1
$app_token = file_get_contents("https://graph.facebook.com/oauth/access_token?" .
"client_id=" . appid .
"&client_secret=" . secret .
"&grant_type=client_credentials");
2
$fb = new Facebook(array('appId' => appid, 'secret' => secret, 'cookie' => true));
$app_token = $fb->getAccessToken(),
我可以理解,有两种方法可以获得access_token
,但为什么我会从这两种方法中获得不同的值? [就我注意到的情况而言,两者的工作方式相同]
我想知道差异是什么以及获得access_token
的最佳方法是什么。
答案 0 :(得分:0)
我认为第二种选择是好的。因为将来Facebook可能会更改URL以获取访问令牌。但在第二个选项中,您使用的是oAuth,它更安全。您可能需要更改您使用的SDK。而已。
答案 1 :(得分:0)
主要的不同之处在于,第二个不需要http请求来获取应用访问令牌,只需将客户端ID和客户端密钥与“|”连接在一起。
示例client_id'abc'和client_secret'def',然后在调用https://graph.facebook.com/app?access_token=abc|def时可以使用'abc | def'
答案 2 :(得分:0)
在oauth终点点击将始终为您提供长寿命令牌,这与短命令牌不同。