Php Facebook应用程序错误
这是我的权限代码:Php Facebook应用程序错误,php,facebook,facebook-php-sdk,facebook-apps,Php,Facebook,Facebook Php Sdk,Facebook Apps,这是我的权限代码: $permissions = $facebook->api("/me/permissions"); if( @array_key_exists('publish_stream', $permissions['data'][0]) ) { // Permission is granted! // Do the related task } else { // We don't have the permission // Alert th
$permissions = $facebook->api("/me/permissions");
if( @array_key_exists('publish_stream', $permissions['data'][0]) ) {
// Permission is granted!
// Do the related task
} else {
// We don't have the permission
// Alert the user or ask for the permission!
echo '<script>
window.location.replace("facebook.com/dialog/oauth?client_id=257378464344747&redirect_uri=https://www.facebook.com/pages/Test-Matyii/399406486739482?sk=app_257378464344747&scope=email,publish_stream");
</script>' ;
}
您需要确保正确设置PHPSDK,例如
$facebook = new Facebook(array(
'appId' => 'APP_ID',
'secret' => 'APP_SECRET',
));
$user = $facebook->getUser();
if ($user) {
try {
$permissions = $facebook->api("/me/permissions");
// do something with the perms
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
}
如果$user在此处有效,则会记录用户并调用api。但是,如果为空,则需要用户使用getLoginUrl登录。您必须为$facebook api调用提供有效的访问令牌。第一行之前的代码在哪里?
$facebook = new Facebook(array(
'appId' => 'APP_ID',
'secret' => 'APP_SECRET',
));
$user = $facebook->getUser();
if ($user) {
try {
$permissions = $facebook->api("/me/permissions");
// do something with the perms
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
}