我正在关注:https://developers.facebook.com/docs/guides/web/
我的网站有自己的登录系统(用Django / Python编写)。如果不使用django-social-auth类型的插件,我想将facebook身份验证集成到我的网络应用程序中。
<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运行我的服务器,这是localhost)
那么,下一步是什么?当用户点击登录并允许它时,我希望进行一些服务器端验证,以便使用fb帐户登录我的用户。但我现在不知道该怎么做。
点击登录FB后,它闪烁,没有点击我的服务器。需要一些指导。
谢谢。
答案 0 :(得分:0)
我无法引导您完成您需要的所有代码,但是我可以解释我过去使用过的一般过程(包括一些Django站点),希望您能够用它来建立你的网站:
function(response)
调用的FB.login
部分,处理返回的响应,然后对Django视图执行Ajax POST(我使用jQuery),获取响应,解析它以检索用户的访问令牌并将其存储在该用户的用户配置文件对象中。