javascript - React:存储 JWT
问题描述
我有一个后端,如果用户成功登录,他会在其中获得 JSON Web 令牌。其他 API 调用需要此令牌,我想将其存储在应用程序范围内,以便从应用程序中的每个点访问它。存储它并从任何地方访问它的最佳点是什么?
解决方案
您可以在登录时将其存储在本地存储中,例如
export async function login(username, password) {
const { data: jwt } = await http.post(apiEndpoint, { username, password });
localStorage.setItem("token", jwt.token);
}
而且你每次都可以访问它
export function getCurrentUser() {
try {
const jwt = localStorage.getItem("token");
return jwtDecode(jwt);
} catch (error) {
return null;
}
}
我已经广泛使用了这种方法,并且很有魅力。
推荐阅读
- r - 计算 R 中多列的毒性特征变量并将该信息保存在数据集中
- php - 使用准备好的语句插入 Mysqli 错误
- mdriven - 自定义服务中调用 AsTajson 的派生属性
- android - 如何在 Android 中调整 ToggleButtons,使其具有边缘并改变颜色?
- android-studio - Android Studio Arctic Fox 2020.3.1 无法安装其工具
- sparql - 这个 SPARQL 搜索查询可以变得更高效吗?
- javascript - 节点 ffi SetWindowsHookExW KeyboardProc 回调不适用于 32 位
- algorithm - 替代最大流量
- vue.js - 为什么 npm run watch 崩溃了?
- c# - 将 lambda 表达式转换为函数