微博第三方登录使用social_django实现显示登陆的用户名
Posted duaimili
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微博第三方登录使用social_django实现显示登陆的用户名相关的知识,希望对你有一定的参考价值。
首先修改social_soce源码,将用户信息添加进cookie
将其修改为:
response = backend.strategy.redirect(url)
payload = jwt_payload_handler(user)
response.set_cookie(‘user_name‘,user.username,max_age=24*3600)
response.set_cookie(‘user_id‘,user.id,max_age=24*3600)
response.set_cookie(‘token‘,jwt_encode_handler(payload),max_age=24*3600)
return response
然后在前端页面获取Cookie信息:
getCookie: function (cname) {
var name = cname + "=";
var ca = document.cookie.split(‘;‘);
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ‘ ‘) c = c.substring(1);
if (c.indexOf(name) != -1) return c.substring(name.length, c.length);
}
return "";
},
payload = jwt_payload_handler(user)
response.set_cookie(‘user_name‘,user.username,max_age=24*3600)
response.set_cookie(‘user_id‘,user.id,max_age=24*3600)
response.set_cookie(‘token‘,jwt_encode_handler(payload),max_age=24*3600)
return response
然后在前端页面获取Cookie信息:
getCookie: function (cname) {
var name = cname + "=";
var ca = document.cookie.split(‘;‘);
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ‘ ‘) c = c.substring(1);
if (c.indexOf(name) != -1) return c.substring(name.length, c.length);
}
return "";
},
以上是关于微博第三方登录使用social_django实现显示登陆的用户名的主要内容,如果未能解决你的问题,请参考以下文章