R01*_*010 5 ajax login node.js express passport.js
是否可以通过ajax使用passport.js登录?
事情是我正在通过ajax创建用户,并且我希望它能自动登录(所有JSON都以一种宁静的风格),但是req.login()做了一些我不知道的事情,并且显然发送了它自己的状态,标头,甚至重定向到家,但是我需要创建自己的json响应。
我创建用户的代码:
signup_facebook:功能(要求,要求){
var restponse = new Restponse();
var body = req.body;
var obj = {
display_name: body.first_name,
name: body.first_name,
surname: body.last_name,
photos: ['http://graph.facebook.com/'+ body.id+ '/picture?type=normal'],
gender: body.gender,
facebook: {
userID: body.id,
displayName: body.display_name
}
}
User.facebookSignUp(obj, function(user){
if(user !== false){
user = obj;
restponse.location = '/';
restponse.status = HTTPStatus.REST.C201_OK;
}else{
restponse.location = '/';
restponse.status = HTTPStatus.REST.C302_FOUND;
}
restponse.body = user;
req.login(user, {}, function(err) {
APIheart.respondJson(res, restponse);
});
})
Run Code Online (Sandbox Code Playgroud)
谢谢你的时间!
我在这篇文章中找到了答案:
http://toon.io/on-passportjs-specific-use-cases/
// Manually establish the session...
req.login(user, function(err) {
if (err) return next(err);
return res.json({
message: 'user authenticated',
});
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3641 次 |
| 最近记录: |