前后端分离 拦截器 token 和 跨域问题

在前后端分离项目中,Token代替Session处理用户认证。登录成功后,后端返回加密的Token,前端将其放入请求头。自定义拦截器实现预处理,检查请求头中的Token,空或异常则拦截并返回错误状态码。解决CORS跨域问题,可通过@CorsOrigin注解或在MVC配置类中全局设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

token 在前后端分离项目里面token 职责和 不分离里面的session 近似,
拿登录功能距离, 当前端登录了 此时前端服务器发出接口请求 ,后端进行账号密码的校验 如果校验成功返回 的json里面携带 根据 用户数据加密过后的token ,而token加密需要 JwtUtil工具类进行加密
就拿 up主三更草堂的JwtUtl举例(我是看他的教程学的 狗头保命)


 
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.JwtBuilder;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
 
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
import java.util.Base64;
import java.util.Date;
import java.util.UUID;
 
/**
 * JWT工具类
 */
public class JwtUtil {
   
 
    //有效期为
    public static final Long JWT_TTL = 60 * 60 *1000L;// 60 * 60 *1000  一个小时
    //设置秘钥明文
    public static final String JWT_KEY = "sangeng";
 
    public static String getUUID(){
   
        String token = UUID.randomUUID().toString().replaceAll("-", "");
        return token;
    }
    
    /**
     * 生成jtw
     * @param subject token中要存放的数据(json格式)
     * @return
     */
    public static String createJWT(String subject) {
   
        JwtBuilder builder = getJwtBuilder(subject, null, getUUID());// 设置过期时间
        return builder.compact();
    }
 
    /**
     * 生成jtw
     * @param subject token中要存放的数据(json格式)
     * @param ttlMillis token超时时间
     * @return
     */
    public static String createJWT(String subject, Long ttlMillis) {
   
        JwtBuilder builder = getJwtBui
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值