Appearance
jwt — JWT 工具
jwt 模块提供了 JWT Token 的创建和解析功能。
引入方式
javascript
var jwt = require("jwt")API 列表
Init — 初始化密钥
javascript
var j = jwt.Init("your-secret-key")| 参数 | 类型 | 说明 |
|---|---|---|
| key | string | JWT 签名密钥 |
| 返回值 | Jwt | JWT 实例 |
Create — 创建 Token
javascript
var j = jwt.Init("your-secret-key")
var token = j.Create({
username: "admin",
role: "admin",
exp: Math.floor(Date.now() / 1000) + 86400
})| 参数 | 类型 | 说明 |
|---|---|---|
| maps | map | Token 载荷数据 |
| 返回值 | string | JWT Token 字符串 |
Parse — 解析 Token
javascript
var j = jwt.Init("your-secret-key")
var claims = j.Parse(token)
// 返回: {username: "admin", role: "admin", exp: 1700000000}| 参数 | 类型 | 说明 |
|---|---|---|
| jwtStr | string | JWT Token 字符串 |
| 返回值 | map | 载荷数据 |
完整示例
javascript
var jwt = require("jwt")
// 创建 Token
var j = jwt.Init("my-secret-key")
var token = j.Create({
username: "admin",
role: "admin"
})
// 解析 Token
var claims = j.Parse(token)
log.Info("用户: " + claims.username)
// 生成带过期时间的 Token
var tokenWithExp = j.Create({
username: "admin",
exp: Math.floor(Date.now() / 1000) + 7200 // 2 小时后过期
})注意事项
- 密钥建议使用高强度随机字符串
- 建议在载荷中设置
exp字段控制 Token 过期时间 exp值为 Unix 时间戳(秒)