简介
JSON Web Token(JWT)是一个用于在网络上发送信息的一种基于 JSON 的开放式标准。该标准定义了一种紧凑和自包含的方式,用于在各方之间作为 JSON 对象安全地传输信息。JWT 可以被使用来验证请求的发送者和接收者,并对请求的内容做一些其他限制。Sc-jsonwebtoken 是一个使用 Node.js 实现 JWT 的包。
安装
首先,你需要使用 Node.js 安装 npm(Node Package Manager)。如果你已经安装了 npm,就可以使用下面的命令安装 sc-jsonwebtoken 这个包。
npm install sc-jsonwebtoken
使用方法
导入包以及设置密钥
在使用 sc-jsonwebtoken 之前,我们需要引入该包并设置一个私钥。
const jwt = require('sc-jsonwebtoken'); const private_key = 'MyVerySecretKey'; // 密钥
生成 token
使用私钥生成一个 token。
const payload = { user_id: 123456, name: 'John Doe', roles: ['admin', 'editor'] } const token = jwt.sign(payload, private_key, { expiresIn: '1h' });
代码解释:
payload
:token 的主体信息private_key
:使用的私钥expiresIn
:token 的过期时间,可以使用字符串或数字,例如:'1h' 或 3600(单位为秒)
验证 token
验证传入的 token 是否有效。
-- -------------------- ---- ------- ----- ----- - ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ----------------- ------------ ----- -------- -- - -- ----- - ----------------- - ---- - --------------------- - ---展开代码
代码解释:
token
:要验证的 tokenprivate_key
:使用的私钥decoded
:验证成功后解码出的 token 主体信息
完整示例
-- -------------------- ---- ------- ----- --- - --------------------------- ----- ----------- - ------------------ -- -- ----- ----- ------- - - -------- ------- ----- ----- ----- ------ --------- --------- - ----- ----- - ----------------- ------------ - ---------- ---- --- ------------------- -- -- ----- ----------------- ------------ ----- -------- -- - -- ----- - ----------------- - ---- - --------------------- - ---展开代码
指导意义
Jwt 是一种网络上常用的开放式标准,而 sc-jsonwebtoken 是一个使用 Node.js 实现 Jwt 的包。掌握 sc-jsonwebtoken 的使用方法,可以在项目开发中提高开发效率,保障数据传输的安全性。此外,也有助于对 Jwt 的了解和学习,对后续 Web 开发有更好的指导意义。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055aa981e8991b448d8345