关于node token设计,这两天找了不少文章,都写的不错,先贴出地址,有兴趣的朋友可以去看看。
在Nodejs中使用JSON WEB Tokens
Nodejs RESTFul架构实践之api篇
正所谓前人栽树,后人乘凉,看了之后自己好像也有一些思路了,简单的记录分享一下。
前端就不说了,因为我是ios,用的windows没法撸代码 所以就看一下后端的实现。
我们需要用到jsonwebtoken和jwt-simple,大家可以自行学习,用npm安装即可。
当用户登录的时候,我们需要在服务端生成token 返回给前端,如:
var jwt = require('jsonwebtoken');
//假设这是我们的secret
var secret = 'SALLEN-JWT';
//这是我们数据和生成方式
var token = jwt.sign({name:'sallen'},secret);
//这是我们数据和生成方式 expiresIn参数 代表token保存时间
var older_token = jwt.sign({
name:'sallen',
},secret,{expiresIn:'1h'});
当客户端拿到token 并在下次请求的时候 发给我们 我们需要验证,如;
jwt.verify(string, secret, function(err, decoded) {
//err
// decoded.name
});
或者
try {
var decoded = jwt.verify(token, secret');
} catch(err) {
// err
}
简单的思路就是这样,但是处理并不完整,稍后会把前端 以及后端的一个完整处理附上。
习惯了交流记录,继续学习中。