Angular拦截器在header中提供JwtToken后返回401错误
创始人
2024-10-27 22:31:32
0

在拦截器中添加对 Jwt Token 的验证,并处理在 Token 无效或过期时的情况。可以使用第三方库 jwt-decode 来验证 Token 是否过期,以下是示例代码:

import { Injectable } from '@angular/core';
import {
  HttpEvent,
  HttpHandler,
  HttpInterceptor,
  HttpRequest,
} from '@angular/common/http';
import { Observable } from 'rxjs';
import { tap } from 'rxjs/operators';
import * as jwt_decode from 'jwt-decode';

@Injectable()
export class TokenInterceptor implements HttpInterceptor {

  intercept(
    request: HttpRequest,
    next: HttpHandler
  ): Observable> {

    const JWT_TOKEN = 'your_token_here';
    const decodedToken: any = jwt_decode.default(JWT_TOKEN);

    if (decodedToken.exp < new Date().getTime() / 1000) {
      // Token 已过期,进行相关操作
    } else {
      request = request.clone({
        setHeaders: {
          Authorization: `Bearer ${JWT_TOKEN}`,
        },
      });
      return next.handle(request).pipe(
        tap(() => {
          // 请求成功操作
        }, (error) => {
          // 请求失败操作
        }));
    }
  }
}

相关内容

热门资讯

透视教程(wepoker)we... 透视教程(wepoker)wepoker底牌透视(透视)其实真的有挂(2025新版);wepoker...
透视安装(WEPOKER)we... 透视安装(WEPOKER)wepoker俱乐部辅助(透视)切实是有挂(2025新版教程)wepoke...
透视挂(WEPOKER)wep... 透视挂(WEPOKER)wepoker代打辅助机器人(透视)切实是有挂(科技教程)1、这是跨平台的w...
透视中牌率(WEPOKER)w... 透视中牌率(WEPOKER)wepoker辅助器下载(透视)其实真的是有挂(揭秘教程);1、实时we...
透视系统(WePoKer)we... 透视系统(WePoKer)wepoker智能辅助插件(透视)好像是有挂(揭秘教程)1、让任何用户在无...
透视有挂(WEPOKER)we... 透视有挂(WEPOKER)wepoker怎么设置透视(透视)确实是有挂(扑克教程)wepoker怎么...
透视ai(WePoKer)破解... 透视ai(WePoKer)破解辅助插件wepoker(透视)真是是真的有挂(新2025版);1、破解...
透视辅助(WEPOKER)we... 透视辅助(WEPOKER)wepoker私人局外卦(透视)真是有挂(黑科技教程)1、完成wepoke...
透视工具(WePoKer)we... 透视工具(WePoKer)wepoker有用吗(透视)原来存在有挂(我来教教你)小薇(透视辅助)致您...
透视安卓版(WEPOKER)w... 透视安卓版(WEPOKER)we-poker辅助软件教程(透视)果然真的是有挂(规律教程);we-p...