javascript - 在对象中的函数之前运行检查函数
问题描述
我有一个 fetcher 对象,在该对象的任何功能运行之前,我想运行一个令牌检查。我想知道是否有办法最初运行检查,然后继续获取、发布、放置..ect。我的 fetch 对象如下所示:
const Fetcher = {
get: async () => {
//fetch stuff and return a promise
},
post: async () => {
//fetch stuff and return a promise
}
...ect.
}
我想在获取任何内容之前检查我的令牌是否过期,如下所示:
const checkToken = async () => {
const exp = Store.getState().auth.tokenExp;
//check if theres an expiration set
if (!exp) {
Store.dispatch({ type: LOGOUT });
sessionStorage.removeItem('user');
return false;
}
//check if token is not expired
if (Date.now() < exp * 1000) return true;
//if token is expired logout and return true
Store.dispatch({ type: LOGOUT });
sessionStorage.removeItem('user');
return false;
};
我开始在这里做很多跳跃,我试图让它更简单。我正在使用 react 和 redux,所以我已经从 component -> redux action -> fetcher object -> token check 开始,我只是想知道在继续 get, post, put 之前是否有任何简单的方法来运行检查。 .ect 函数除了编写另一个包装函数。我可以对这些功能中的每一个进行检查,但我想知道是否有更好的方法。
解决方案
推荐阅读
- neo4j - Neo4j - 临时集群存储复制失败
- jenkins - 詹金斯在工作区中看不到现有文件
- javascript - 使用 focus() 了解当前关注的元素
- post - 在 Redux-Saga 中使用 POST 调用处理错误
- c# - .NET CORE 3 Windows 服务的基本路径返回 C:\Windows\System32,但实际文件夹为 D:\MyCustomService
- regex - 替换文件中的字符串和正则表达式
- or-tools - 启用取货和交付后后继约束失败
- node.js - 节点JS | [ERR_HTTP_INVALID_STATUS_CODE]:无效状态代码:TypeError:无法读取未定义的属性“类别”
- javascript - Heroku - 将 PHP 服务器端的环境变量引用到 JS 客户端文件
- android - React Native 禁用 console.warn 应用屏幕底部的黄色框