JWT拦截接口后台Springboot处理涉及跨域问题干货

本文介绍了JWT的概念,包括其组成:头信息、消息体和签名。讨论了JWT适合一次性命令认证的情况,并与session和cookie进行了对比。接着,文章重点讲述了在Springboot后台处理跨域问题的干货,包括导入依赖、JWTFilter过滤器和JWTProvider生成器的使用,以及应用配置和Controller接口的设置。
摘要由CSDN通过智能技术生成
jwt概念:

JSON WEB Token(JWT,读作 [/dʒɒt/]),是一种基于JSON的、用于在网络上声明某种主张的令牌(token)。JWT通常由三部分组成: 头信息(header), 消息体(payload)和签名(signature)。

JWT适合一次性的命令认证,颁发一个有效期极短的JWT,即使暴露了危险也很小,由于每次操作都会生成新的JWT,因此也没必要保存JWT,真正实现无状态。

传统web场景使用session或者cookie会更好。

通常情况下感觉代码没问题前后台却交互不成功,很有可能跨域有问题

后台干货

首先导入依赖在pom.xml中

 <!--添加jwt依赖-->
        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt</artifactId>
            <version>0.7.0</version>
        </dependency>

其次使用jwt生成token与解析token只需要俩个类
JWTFilter 过滤器
JWTProvider 生成器

import main.com.baosight.exception.UserException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;

import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 * java类简单作用描述
 *
 * @ProjectName: NoteBookMaven
 * @Description: java类作用描述
 * @CreateDate: 2018/12/4 9:18
 * @UpdateUser: lucas
 * @Version: 1.0
 */

//拦截/api下的所有接口
@WebFilter(filterName = "loginFilter",urlPatterns = "/api/*")
public class JWTFilter implements Filter {

    @Autowired
    private JWTProvider jwtProvider;

    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }

    @Override
    public void doFilter(ServletRequest request, ServletResponse response, Fi
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值