SpringBoot整合Shiro权限框架之微信小程序无Session登陆验证

本文介绍了如何在SpringBoot应用中结合Shiro框架,为微信小程序实现无Session的登录验证。通过创建自定义的LoginSessionManager,修改ShiroConfig配置,并在LoginController中处理返回token,确保移动端可以正确验证用户状态。
摘要由CSDN通过智能技术生成

Shiro通过验证Session来判断用户的登录状态,由于移动APP、小程序等没有Session,导致移动端无法判断用户登录状态。所以改为移动端登陆成功后返回token,在移动端获取其他系统资源时将token和用户ID(用户的唯一标识)设置为请求头,后台验证Session改为验证token的正确性。

1.新建LoginSessionManager继承 DefaultWebSessionManager

package com.caijiang.workorder.config;

import org.apache.shiro.web.servlet.ShiroHttpServletRequest;
import org.apache.shiro.web.session.mgt.DefaultWebSessionManager;
import org.apache.shiro.web.util.WebUtils;

import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import java.io.Serializable;

public class LoginSessionManager extends DefaultWebSessionManager {
   

    private static final String AUTHORIZATION = "token";

    private static final String REFERENCED_SESSION_ID_SOURCE = "Stateless request";

    public LoginSessionManager(){
   
        supe
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值