我是这个Facebook编码游戏的新手,所以偶然发现了我认为只有我可能会遇到的错误.我最初想要允许用户登录来管理他们的页面,但是作为一个想法,客户希望他们的用户也能够发布到他们各自的页面.
所以,我在范围内添加了publish_stream权限,但我只是因为Facebook出错而陷入困境.
我是否必须先从应用程序中取消激活自己的文档:
https://developers.facebook.com/docs/authentication/
附上代码,任何帮助都会很棒:
$facebook = new Facebook(array(
'appId' => $this->app_id,'secret' => $this->secret,));
$s = setting::findAppSettingSpecific('social','facebook');
// exit;
$facebook->setAccessToken($s);
$user = $facebook->getUser();
$dia_url = 'http://localhost/social/accept/';
$login_url = $facebook->getLoginUrl($params = array('redirect_uri' => $dia_url,'scope' => 'manage_pages,publish_stream'));
if($user == 0) {
}
else
{
echo ("<script> top.location.href='".$login_url."'</script>");
echo 'Facebook Loves Us';
return true;
}
它正在使用Localhost,以防万一有人指出这一点,但是在添加额外权限时才开始调用错误.
提前致谢.
你有几个选择:
(1)使用Graph Explorer,在右上角选择你的应用程序选择框,将方法更改为DELETE并在路径中输入我/权限.
这将删除您授予应用程序的所有权限.
(2)如果应用程序已加入书签,则在您的Facebook主页上将应用程序名称悬停在左侧书签面板上,在左侧会出现一个编辑图标,单击该图标,然后单击编辑设置,您可以删除一些个人权限.
(3)在Facebook的右上角,单击面朝下的箭头,在菜单中单击*隐私设置“,然后在该页面中单击”应用程序和网站“的编辑设置,您可以控制您使用的应用程序.
编辑
(4)您可以使用对/ me / permissions的DELETE请求删除具有权限= publish_stream的额外参数的单个权限,例如
感谢@Igy指出了第四个选项.