在我的代码中,我调用了FB.api方法:
FB.api('/me', function(response) {
var access_token = FB.getAuthResponse()['accessToken'];
document.getElementById('status').value = access_token;
document.getElementById("tokenForm").submit();
});
问题是身份tokenForm
的表单不仅连续提交一次,而且我可以找出原因。
答案 0 :(得分:1)
问题在于,您使用statusChangeCallback
作为回调,不仅适用于FB.login
,也适用于FB.getLoginStatus
。
一旦用户登录,后者还将返回status
值为'connected'
的响应对象 - 依此类推,每个新页面加载FB.getLoginStatus
都会调用回调函数状态,然后触发您的testAPI
函数,该函数发出/me
请求,然后再次提交表单......再次......再次提交。