我正在尝试为我的django应用实现facebook注销功能。 Facebook登录对我来说很好。现在我需要以某种方式注销并清除会话。我试图用下面的代码,但它抛出'FB.Connect未定义'错误。有人可以请看我的代码并给我一个解决方案吗?
<html xmlns:fb="http://www.facebook.com/2008/fbml">
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>
FB.init({
appId : 'xxx',
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
</script>
<script>
function logout(){
FB.logout(function(response) {
// user is now logged out
location.href = '/user_sessions/new';
});}
// handle a session response from any of the auth related calls
function handleFBSessionResponse(response) {
/*
//Check the facebook login status
alert("handleFBSessionResponse(), "
+ "\nresponse.status="+response.status
+" \nresponse.session="+response.session
+" \nresponse.perms="+response.perms);
*/
//if we do have a non-null response.session, call FB.logout(),
//the JS method will log the user out
//of Facebook and remove any authorization cookies
FB.logout(handleFBSessionResponse);
}
</script>
<a href="javascript:logout();">Logout</a >
或者是否有任何其他直接简单的方法来实现它,如果是这样,请在此处发布该代码。
答案 0 :(得分:1)
FB.logout(handleFBSessionResponse);
你在内部传递回调函数似乎很奇怪。尝试做那样的事情:
FB.logout(function(response) {
// user is now logged out
location.href = '/user_sessions/new';
});
并删除代码中的其他location.href引用。
答案 1 :(得分:0)
我使用了这个
<a href="http://m.facebook.com/logout.php?confirm=1&next=http://10.1.0.90:8080/registrationForm" >Sign Out</a>