sa-token-reactor-spring-boot4-starter 1.46.0 版本 SaTokenContext 上下文尚未初始化
使用版本:
开启 虚拟线程的情况下会报错 spring.threads.virtual.enabled=true,如果设为false就正常 sa-token-reactor-spring-boot4-starter 1.46.0 项目是spring boot 4 +web flux 使用1.45.0正常
报错信息:
cn.dev33.satoken.exception.SaTokenContextException: SaTokenContext 上下文尚未初始化 at cn.dev33.satoken.context.SaTokenContextForThreadLocalStaff.getModelBox(SaTokenContextForThreadLocalStaff.java:73) at cn.dev33.satoken.context.SaTokenContextForThreadLocal.getModelBox(SaTokenContextForThreadLocal.java:55) at cn.dev33.satoken.context.SaTokenContext.getStorage(SaTokenContext.java:86) at cn.dev33.satoken.context.SaHolder.getStorage(SaHolder.java:69) at cn.dev33.satoken.stp.StpLogic.isSwitch(StpLogic.java:2877) at cn.dev33.satoken.stp.StpLogic.getLoginId(StpLogic.java:1129) at cn.dev33.satoken.stp.StpLogic.checkLogin(StpLogic.java:1118) at cn.dev33.satoken.annotation.handler.SaCheckLoginHandler._checkMethod(SaCheckLoginHandler.java:45)
希望结果:
直接返回结果
复现步骤:
只要添加 satoken相关注解的都会报这个错,那么如果去除注解每个接口都设置上下文 SaReactorSyncHolder.setContext(exchange); 是不是有点臃肿
Source: dromara/Sa-Token