JWT Utility for Node.js
此实用程序可用于生成和解析 JWT(JSON Web 令牌)。
Supported Algorithms
Utility Methods
Method | Arguments | Description |
---|
getFactory | String | Set algorithm to be used to generate the JWT and returns an instance of Factory |
getParser | | Returns an instance of Parser which can be used to parse and verify a JWT |
Generating a Token
const JWTUtility = require('@abskmj/jwt-utility');
let jwt = JWTUtility.getFactory('HS256')
.setIssuer('AuthServer')
.setSubject('Login')
.setExpiry(10)
.setClaims({
user: 'testUser',
name: 'Test User'
})
.sign('secret key');
Factory Instance Methods
Method | Arguments | Description |
---|
setIssuer | String | Set iss claim value. |
setSubject | String | Set sub claim value. |
setAudience | String | Set aud claim value. |
setExpiry | Number | Set exp claim value, value will be current epoch time in seconds + seconds passed as argument. |
setClaims | JSON | Set the custom data that will be part of the JWT. |
sign | String | Generate the JWT using the secret key passed |
Parsing a Token
const JWTUtility = require('@abskmj/jwt-utility');
let data = JWTUtility.getParser()
.validateIssuer('AuthServer')
.validateSubject('Login')
.parse(jwt, 'secret key');
/*
data:
{
headers: {
alg: 'HS256',
typ: 'JWT'
},
claims: {
user: 'testUser',
name: 'Test User',
iat: 1512555172,
iss: 'AuthServer',
sub: 'Login',
exp: 1512555182
}
}
*/
Parser Instance Methods
Method | Arguments | Description |
---|
validateIssuer | String | Validate iss claim value. |
validateSubject | String | Validate sub claim value. |
validateAudience | String | Validate aud claim value. |
validateExpiry | Number | Validate exp claim value, value validated against current epoch time in seconds + seconds passed as argument. |
parse | String, String | Set JWT token and key used to verify the token |
Further Development
尚未计划支持 RS256、RS384、RS512。 如果您希望请求任何新功能或错误修复,请联系开发人员。
JWT Utility for Node.js
This utility can be used to generate and parse JWTs (JSON Web Tokens).
Supported Algorithms
Utility Methods
Method | Arguments | Description |
---|
getFactory | String | Set algorithm to be used to generate the JWT and returns an instance of Factory |
getParser | | Returns an instance of Parser which can be used to parse and verify a JWT |
Generating a Token
const JWTUtility = require('@abskmj/jwt-utility');
let jwt = JWTUtility.getFactory('HS256')
.setIssuer('AuthServer')
.setSubject('Login')
.setExpiry(10)
.setClaims({
user: 'testUser',
name: 'Test User'
})
.sign('secret key');
Factory Instance Methods
Method | Arguments | Description |
---|
setIssuer | String | Set iss claim value. |
setSubject | String | Set sub claim value. |
setAudience | String | Set aud claim value. |
setExpiry | Number | Set exp claim value, value will be current epoch time in seconds + seconds passed as argument. |
setClaims | JSON | Set the custom data that will be part of the JWT. |
sign | String | Generate the JWT using the secret key passed |
Parsing a Token
const JWTUtility = require('@abskmj/jwt-utility');
let data = JWTUtility.getParser()
.validateIssuer('AuthServer')
.validateSubject('Login')
.parse(jwt, 'secret key');
/*
data:
{
headers: {
alg: 'HS256',
typ: 'JWT'
},
claims: {
user: 'testUser',
name: 'Test User',
iat: 1512555172,
iss: 'AuthServer',
sub: 'Login',
exp: 1512555182
}
}
*/
Parser Instance Methods
Method | Arguments | Description |
---|
validateIssuer | String | Validate iss claim value. |
validateSubject | String | Validate sub claim value. |
validateAudience | String | Validate aud claim value. |
validateExpiry | Number | Validate exp claim value, value validated against current epoch time in seconds + seconds passed as argument. |
parse | String, String | Set JWT token and key used to verify the token |
Further Development
Support for RS256, RS384, RS512 is not planned yet. Please get in touch with the developer, if you wish to request any new functionality or bug fix.