首页 > 解决方案 > 如何导入jsonwebtoken的verify抛出的TokenExpiredError?

问题描述

我想检查 an 的类型是否ErrorTokenExpiredError由使用 Typescript 的库的jwt.verify函数抛出的,例如jsonwebtokeninstanceof

import jwt from "jsonwebtoken";

function someFunction() {
    try {
        return jwt.verify(token, key);
    }catch(err) {
        if(err instanceof TokenExpiredError) {
            return attemptRenewal()
        }
        throw err
    }
}

如何导入符号TokenExpiredError

我没有找到关于这个重要课程的任何文档,并且我想到的唯一直观的

import { jwt, TokenExpiredError } from "jsonwebtoken";

原因jwtundefined

我知道像与类名进行字符串比较这样的解决方法,但我想生成干净的代码。

我正在使用jsonwebtoken8.5.1。

标签: javascripttypescriptjwt

解决方案


i had the same inquiry, but after a quick search and test, below should work

import * as jwt from "jsonwebtoken";

function someFunction() {
    try {
        return jwt.verify(token, key);
    }catch(err) {
        if(err instanceof jwt.TokenExpiredError) {
            return attemptRenewal()
        }
        throw err
    }
}

TokenExpiredError has been already imported as part of the jwt.


推荐阅读