我有这个facebook js api代码,它一直工作到一天后... 现在它突然停止工作.. 我正在将它用于拼贴项目,可能我的搭档可能已经摆弄它但我似乎无法发现它有任何问题......
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script type="text/javascript" >
var access_token;
FB.init({
appId:'XYZ',
cookie:true,
status:true,
xfbml:true
});
FB.Event.subscribe('auth.login', function(response) {
login_event();
});
function login_event(){
FB.api("/me",function(user){
var request = new XMLHttpRequest();
request.onreadystatechange=function(){
uid = user.id;
if(request.readyState==4 && request.status==200){
$("#middle").load("login_manager.php?uid="+uid);
}
}
request.open("GET", "sessions.php?uid="+uid, true);
request.send();
})
}
if(navigator.appCodeName=="Mozilla"){
FB.getLoginStatus(function(response) {
document.getElementById("middle").innerHTML = "<img src=\"../images/loading-round2.gif\">";
if (response.session) {
access_token = response.session.access_token;
FB.api('/me', function(user) {
if (user!=null) {
var uid = user.id;
var request = new XMLHttpRequest();
request.open("GET", "sessions.php?uid="+uid, true);
request.send();
request.onreadystatechange=function(){
if(request.readyState==4 && request.status==200){
$("#middle").load("login_manager.php");
}
}
}
});
}
else{
document.getElementById("middle").innerHTML = '<fb:login-button perms="email,user_checkins,offline_access,publish_stream">Login with Facebook</fb:login-button>';
FB.XFBML.parse(document.getElementById('middle'));
}
});
}
</script>
它似乎没有进入getLoginStatus()函数
答案 0 :(得分:0)
您可以使用firebug或警告声明调试您的javascript。今天我尝试了类似于你的脚本的以下js,这对我有用:
<fb:login-button autologoutlink="true"></fb:login-button>
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function () {
FB.init({
appId: '159618137417054',//enter your app id
status: true,
cookie: true,
xfbml: true
});
FB.Event.subscribe('auth.login', function (response) {
window.location.reload();
});
};
(function () {
var e = document.createElement('script');
e.type = 'text/javascript';
e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
e.async = true;
document.getElementById('fb-root').appendChild(e);
}());
alert('FB API Test')
FB.api('/me', function (response) {
alert(response.name)
alert(response.id);//now my facebook ID is available to javascript
});
</script>
答案 1 :(得分:0)
它已经开始工作了.. 这是facebook结束时的一个问题