0
我使用此代码为应用验证新的认证获得通过禁用用户:Facebook应用的权限请求使用
//Obtain the access_token with publish_stream permission
if(empty($_REQUEST["code"])){
$dialog_url= "http://www.facebook.com/dialog/oauth?"
. "client_id=" . $app_id
. "&redirect_uri=" . urlencode($post_login_url)
. "&scope=publish_stream,user_birthday";
echo("<script>top.location.href='" . $dialog_url
. "'</script>");
}
else {
$code = $_REQUEST["code"];
$token_url="https://graph.facebook.com/oauth/access_token?"
. "client_id=" . $app_id
. "&client_secret=" . $app_secret
. "&code=" . $code
. "&redirect_uri=" . urlencode($post_login_url);
$response = file_get_contents($token_url);
$params = null;
parse_str($response, $params);
$access_token = $params['access_token'];
}
在新的Facebook的身份验证,用户必须选择的一个选项许可请求并在点击“登录”按钮后取消它。例如,用户可以禁用对publish_stream或user_birthday访问的请求,并仍然登录到我的应用程序。 我看到Zynga和其他许多人仍然在使用,看起来老的认证请求,如:
http://i.stack.imgur.com/ESigT.png(一些图片,我在网上找到)
但由于某些原因,在过去2周我的要求对于权限对话框更改为新的: http://i52.tinypic.com/qstm6g.png(我在网上找到了一些图片)
如何将其切换回旧权限对话框?这是只有一个单一的对话框,而不是2-3对话框,直到用户登录到我的应用程序。
但我看到许多人创建新的应用程序仍然会得到旧的权限对话框,为什么? –
也许他们已禁用* Enhanced Auth Dialog *选项。同样,**你**应该处理这种情况,当用户撤销权限**而不是**试图隐藏它! :-) – ifaour
如果生病禁用增强型身份验证对话框会发生什么情况?是否会在不久的将来成为Facebook唯一的选择(默认)?谢谢 –