遇到问题与整合Facebook验证
问题描述:
我在下面:https://developers.facebook.com/docs/guides/web/遇到问题与整合Facebook验证
我的网站都有自己的登录系统(这是写在Django/Python)的。如果不使用django-social-auth类型的插件,我想将Facebook身份验证集成到我的Web应用程序中。
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '{{facebook_app_id}}', // App ID
channelUrl : '//{{host_name}}/external/fb_channel', // Channel File
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
// Additional initialization code here
};
// Load the SDK Asynchronously
(function(d){
var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
ref.parentNode.insertBefore(js, ref);
}(document));
</script>
但是,我已经按照该指令(https://developers.facebook.com/docs/guides/web/)和登录按钮显示预期和点击时,弹出窗口显示,让我的应用。 (我在127.0.0.1这是本地主机运行我的服务器)
那么,接下来是什么?当用户点击登录并允许登录时,我希望做一些服务器端验证,以使用fb账户登录我的用户。但我不知道现在该做什么。
点击使用FB登录后,它闪烁并没有打我的服务器。需要一些指导。
谢谢。
答
我无法步行通过的代码,你需要每一位,不过,我可以解释一下,我已经在过去使用的一般过程(包括一些Django的网站),希望你会可以用它来建立自己的网站:
- 整合Facebook JavaScript SDK
- 绑定一个JavaScript函数调用FB.login一个“登录与Facebook”按钮,要求您需要为用户
- 的所有权限在
FB.login
调用的function(response)
部分中,处理返回ED响应,然后执行一个Ajax POST到Django视图(I使用jQuery此),其需要的响应,解析它来检索该用户的访问令牌并将其存储在该用户的用户简档对象。 - 然后,您可以使用此的access_token让Facebook代表该用户的服务器端的Graph API请求,或者如果你愿意,可以真正地使用JavaScript SDK有很多,使所有您的通话完全在客户端Ajax与Django后端进行交互。