Javascript Facebook API示例代码有错误
我直接从facebook api文档中得到了这个示例,我不断得到Javascript Facebook API示例代码有错误,javascript,ajax,facebook,Javascript,Ajax,Facebook,我直接从facebook api文档中得到了这个示例,我不断得到参考错误:在firefox和IE10中都没有定义FB 我不明白为什么在我使用他们的示例代码时没有定义FB?这只是一个安全异常,因为我在本地运行,还是FB docs代码真的有问题 <!DOCTYPE html> <html> <head> <title>FB Login Test</title> </head> <body> <s
参考错误:在firefox和IE10中都没有定义FB
我不明白为什么在我使用他们的示例代码时没有定义FB?这只是一个安全异常,因为我在本地运行,还是FB docs代码真的有问题
<!DOCTYPE html>
<html>
<head>
<title>FB Login Test</title>
</head>
<body>
<script type="text/javascript">
window.fbAsyncInit = function() {
FB.init({
appId : '(my app id)',
xfbml : true,
version : 'v2.1'
});
};
(function(d, s, id){
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
function facebookLogin(){
FB.login(function(response){
if (response.authResponse) {
console.log('Welcome! Fetching your information');
FB.api('/me', function(response) {
console.log('Good to see you, ' + response.name + '.');
});
console.log(response);
} else {
console.log('User cancelled login or did not fully authorize.');
}
});
}
</script>
<a href="javascript:facebookLogin();">Login</a>
</body>
</html>
FB登录测试
window.fbAsyninit=函数(){
FB.init({
应用程序id:“(我的应用程序id)”,
xfbml:是的,
版本:“v2.1”
});
};
(功能(d、s、id){
var js,fjs=d.getElementsByTagName[0];
if(d.getElementById(id)){return;}
js=d.createElement;js.id=id;
js.src=“//connect.facebook.net/en_US/sdk.js”;
fjs.parentNode.insertBefore(js,fjs);
}(文档“脚本”、“facebook jssdk”);
函数facebookLogin(){
FB.登录(功能(响应){
if(response.authResponse){
log('欢迎!获取您的信息');
FB.api('/me',函数(响应){
log(“很高兴见到你,+response.name+”);
});
控制台日志(响应);
}否则{
log('用户取消登录或未完全授权');
}
});
}
这是因为这一行,以及您使用本地页面的事实:
js.src = "//connect.facebook.net/en_US/sdk.js";
当URL不提供协议时,浏览器将使用浏览器当前查看的任何协议。由于您是从本地源使用此链接,因此使用的链接将是
file://connect.facebook.net/en_US/sdk.js
如果要从本地源使用它,则需要将协议添加到url
js.src = "https://connect.facebook.net/en_US/sdk.js";