session_key
和secret
。
但是,我无法获得这两个特定变量。 当我在本地测试相同的代码时,我可以获得上面的变量(但这可能是因为本地应用程序不是画布应用程序)
我正在使用以下代码进行重定向:
$facebook->getLoginUrl(array(
'canvas' => 1,
'fbconnect' => 0,
'req_perms' => 'user_status,publish_stream,offline_access'
));
有人建议我在用户授权应用程序时如何抓取session_key
和secret
? (用于永久离线访问)
以下是通过Facebook进行的session
转储示例:
Array (
[uid] => 100000926583671
[session_key] =>
[expires] => 0
[secret] =>
[base_domain] =>
[access_token] => 183043495039366|3ab6ac2asdkhj1bcfdec13d7-100000926583671|jJQaIT-n80YxioAasdwN0cm99U
[sig] => 2f64sadasc1da31c12927a052752776
)
这是错误:
Array (
[error] => Array (
[type] => OAuthException
[message] => An active access token must be used to query information about the current user.
)
)
答案 0 :(得分:1)
session_key 和机密现已弃用,Facebook希望您使用Oauth身份验证架构。然后,你将不得不使用给定的 access_token (你正确进入$ session)来进行api调用。
尝试:
$session = $facebook->getSession();
$me = $facebook->api('/100000926583671',
array('access_token' => $session['access_token'])
);
var_dump($me);