当前位置: 首页 > wzjs >正文

盐城网站制作wordpress用微博sdk

盐城网站制作,wordpress用微博sdk,国外企业画册设计网站,湖北省网站备案最快几天文末有本篇文章的项目源码文件可供下载学习 在这个案例中,我们已经实现了自定义登录URI的操作,登录成功之后,我们再次访问后端中的API的时候要在请求头中携带token,此时的token是jwt字符串,我们需要将该jwt字符串进行解析,查看解析后的User对象是否处于登录状态.登录状态下,将…

文末有本篇文章的项目源码文件可供下载学习

在这个案例中,我们已经实现了自定义登录URI的操作,登录成功之后,我们再次访问后端中的API的时候要在请求头中携带token,此时的token是jwt字符串,我们需要将该jwt字符串进行解析,查看解析后的User对象是否处于登录状态.登录状态下,将用户信息封装成Authentication对象用于后续过滤器验证,并放行,未登录状态下直接拒绝访问.

0.配置思路

  1. 在本案例基础上,进行升级.
  2. 新建JwtAuthenticateFilter.java,实现认证过滤器.
  3. 配置SecurityConfig.java,将JwtAuthenticateFilter加入过滤器链.
  4. 进行相关测试.

1.新建JwtAuthenticateFilter.java

@Component
public class JwtAuthenticateFilter extends OncePerRequestFilter {@Autowiredprivate UserMapper userMapper;@Overrideprotected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException {
//        1.获取tokenString token = request.getHeader("token");if (!StringUtils.hasText(token)) {filterChain.doFilter(request, response);return;}
//        2.解析tokenClaims claims = JwtUtil.parseJWT(token);String userId = claims.getId(); //获取用户IdString userDetailsString = claims.getSubject();UserDetailsImpl userDetails = JSON.parseObject(userDetailsString, UserDetailsImpl.class);
//        3.获取用户信息User user = userMapper.findById(userId);if (Objects.isNull(user) || user.getCurrentFlag().equals("logout")) {throw new RuntimeException("用户未登录");}
//        4.存入SecurityContextHolder//获取权限信息封装到authenticationToken对象中UsernamePasswordAuthenticationToken authenticationToken = new UsernamePasswordAuthenticationToken(userDetails,null,null);SecurityContextHolder.getContext().setAuthentication(authenticationToken);
//        5.放行filterChain.doFilter(request, response);}
}

2.配置SecurityConfig.java

    @Overrideprotected void configure(HttpSecurity http) throws Exception {http
//                关闭csrf.csrf().disable()
//                不通过session获取SecurityContext.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS).and().authorizeRequests()
//                放行登录接口,允许匿名访问.antMatchers("/security/login").anonymous()
//                登录不登录的都可以访问,放行
//                .antMatchers("/hello").permitAll()
//                除上面外的所有请求全部需要认证授权.anyRequest().authenticated();//        配置认证jwt过滤器http.addFilterBefore(jwtAuthenticateFilter, UsernamePasswordAuthenticationFilter.class);}

3.相关测试

3.1未登录测试

我们发现返回403状态码,被拒绝访问.

3.2登录之后访问测试

我们发现返回了token值,将token值复制下来,放到自定义访问的请求头中,之后进行访问测试.

我们发现就能正常访问了.

本篇文章的项目源码文件,可点击下载学习

http://www.dtcms.com/wzjs/804447.html

相关文章:

  • 惠州做棋牌网站建设金融投资网站开发
  • 无极网站维护php网站怎么做的
  • 网站模块删除企业网站建设需要多少钱
  • 手机搭建网站教程打电话叫人做网站
  • 网站管理建设落实报告邢台网站建设58
  • 儿童网站html模板如何免费建造网站
  • 网站开发部门工资入什么科目桂林象鼻山介绍
  • python网站开发好吗抖音代运营朋友圈宣传文案
  • 如何做一网站创造网站
  • 唐山网站定制seo的宗旨是什么
  • 常州网站排名提升室内装修设计师怎么找
  • 微网站建设方式建设企业功能型网站
  • 大连市建设学校网站网站如何做分享
  • 网站备案主体变更杭州余杭网站建设
  • 猪八戒网做网站如何付款营销型网站建设 课程
  • 网站建设改革情况汇报徐州seo顾问
  • wordpress 企业网站 教程谁有哪种浏览器网站免费的
  • 企业网站psd模板网站建设自助建站制作
  • 域名可以绑定几个网站长春做网站建设的公司
  • 网站设计要素 优帮云社交网站盈利吗
  • 用户体验设计经典案例优化落实新十条措施
  • 免费设计商标的网站网站自己维护
  • 网站开发实验报告企业官网型网站模板
  • 湛江免费建站平台淘宝客网站容易做吗
  • 上海建网站制站长网站优化公司
  • 北流网站建设烟台网站建设开发
  • 时尚美容网站建设258网站建设
  • 成都建设银行保安招聘网站教学网站开发源码
  • 告白网站怎么做汽车网址大全123
  • 常州钟楼区邹区建设局网站什么网站做电子元器件