我有一个Facebook应用程序可以帮助用户将在活动中拍摄的照片上传到他们的时间线。用户通过公共信息亭访问应用程序,因此一旦他们登录Facebook,授权应用程序并上传他们的照片,我需要在结束时将其注销,以便他们的会话不会继续下一个用户。我想要做的是通过ajax加载注销网址,以便用户在幕后注销Facebook时可以保留在上传确认屏幕上。我正在通过ajax进行此操作,因为确认屏幕包含从上传中收集的大量值,我试图避免通过注销过程。
但是,这似乎不起作用。我通过getLogoutURL生成一个正确的注销URL,如果我从页面复制其输出并直接在浏览器中加载,会话就会正确注销。但是当我尝试通过ajax加载它时,它似乎无法工作。
任何人都可以通过对注销网址的ajax调用确认是否可以将用户从Facebook注销?
<?php
$logout_url = $facebook->getLogoutUrl(array(
'next' => $protocol.'://'.$_SERVER['HTTP_HOST'].'/sharing/facebook/upload/logout_after.php',
'access_token' => $access_token
));
?>
var ajax_logout = new XMLHttpRequest();
ajax_logout.open("GET", "<?php echo $logout_url; ?>", true);
ajax_logout.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
ajax_logout.send();