Vue项目中这个错误来源于版本问题,之前jwt-decode导出的是jwt_decode,而最新版本导出改成了jwtDecode
只需要导入jwtDecode即可
import { jwtDecode } from "jwt-decode";
除此之外要使用base-64编码/解码功能,您可以使用JavaScript中的内置atob()
和btoa()
函数。这两个函数分别用于将字符串转换为Base64编码和将Base64编码转换为字符串
Base64编码的特点包括:
-
不可逆性:Base64编码是一种单向转换,即编码后的信息无法完全还原为原始数据。虽然可以将Base64编码的字符串解码回原始数据,但这仅限于将数据重构为与原始输入类似的形式,而非真正还原。
-
字符集:Base64编码使用64个字符(A-Z, a-z, 0-9, +, /)来表示所有可能的二进制组合,这样可以在各种系统中安全地传输数据,因为这些字符通常是可打印的ASCII字符。
-
文本化:Base64编码将二进制数据转换为纯文本形式,使其适合于在文本环境中传输,例如在URL参数、JSON数据或HTML中嵌入二进制数据。
jwt-decode依赖的源码:https://github.com/auth0/jwt-decode#readme