我最近才开始将 Facebook 整合到我目前正在开发的网站上。到目前为止我所拥有的是用户可以登录,我可以在登录后获取他们的信息。我很难理解的是如何在初始登录 html 页面之后进行 FB.api() 调用?我知道 Javascript SDK 会自动处理访问令牌和其他东西,但我不确定如何使用它。到目前为止,我所拥有的是:
window.fbAsyncInit = 函数() { FB.init({ appId : 'API_KEY', // 设置你的应用 ID channelUrl : 'DOMAIN', // 频道文件 status : true, // 检查登录状态 cookie : true, // 启用 cookie 以允许服务器访问会话 xfbml : true // 解析 XFBML }); FB.Event.subscribe('auth.authResponseChange', function(response) { console.log("授权变更"); if (response.status === '已连接') { console.log("连接到 Facebook"); //成功 } else if (response.status === 'not_authorized') { console.log("登录 Facebook 但不是我们"); Facebook登入(); //失败的 } 别的 { console.log("两者都登出"); Facebook登入(); //未知错误 } }); }; 函数 FacebookLogin() { FB.login(功能(响应) { 如果(response.authResponse) { window.location = "test.php"; } 别的 { console.log('用户取消登录或未完全授权。'); } },{范围:'email,user_birthday,read_friendlists'}); } // 异步加载 SDK (函数(d){ var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0]; if (d.getElementById(id)) {return;} js = d.createElement('脚本'); js.id = id; js.async = true; js.src = "//connect.facebook.net/en_US/all.js"; ref.parentNode.insertBefore(js, ref); }(文档));
所有这些代码都在登录 html 页面顶部的脚本标记内。我要做的是,一旦用户登录并通过身份验证,我将引导他们到另一个页面,我将使用 FB.api() 函数获取他们的信息并为他们填写注册表单。有什么建议或提示吗?