Facebook文档说offline_access
已被删除。如何将访问令牌延长60天?
我确实已从app的高级设置启用了已弃用offline_access
。
答案 0 :(得分:0)
你可以尝试两种方式: 1.启用脱机弃用功能,并在可用中获取已交换的令牌值,然后运行cUrl功能。运行cUrl后,只需传递var_dump()中的响应值..您可以看到访问令牌和过期日期..
答案 1 :(得分:0)
您可以将https://developers.facebook.com/docs/howtos/login/extending-tokens/用于长期访问令牌,或https://developers.facebook.com/docs/howtos/login/login-as-app/用于未过期的应用访问令牌。但你可能需要第一个。
答案 2 :(得分:0)
function fb_renew_access_token($args=array()){
$token_url = "https://graph.facebook.com/oauth/access_token?client_id=".$args["app_id"]."&client_secret=".$args["app_secret"]."&grant_type=fb_exchange_token&fb_exchange_token=".$args["old_token"];
$c = curl_init();
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($c, CURLOPT_URL, $token_url);
$contents = curl_exec($c);
$err = curl_getinfo($c,CURLINFO_HTTP_CODE);
curl_close($c);
$paramsfb = null;
parse_str($contents, $paramsfb);
return $paramsfb;
}
//to get the extended access token
$extended_access = fb_renew_access_token(array("app_id"=>"4545454544s45454545","app_secret"=>"sdfgds2fg4d2f54g5df4gdsdsfgdsfg54dfg","old_token"=>"54sdf54sd54f35asdgs4ghdsd5sh4d5trh4djhdfj45fdh"));