类 SessionUtils

java.lang.Object
cn.herodotus.stirrup.web.core.reactive.utils.SessionUtils

public class SessionUtils extends Object

Description: WebFlux Session 工具类

作者:
: gengwei.zheng
Date:
: 2024/2/5 20:47
  • 构造器详细资料

    • SessionUtils

      public SessionUtils()
  • 方法详细资料

    • getSession

      public static reactor.core.publisher.Mono<org.springframework.web.server.WebSession> getSession(org.springframework.web.server.ServerWebExchange exchange)
      读取 ServerWebExchange 中的 WebSession
      参数:
      exchange - ServerWebExchange
      返回:
      Mono
    • getSessionIdFromHeader

      public static String getSessionIdFromHeader(org.springframework.web.server.ServerWebExchange exchange)
      获取 Session ID
      参数:
      exchange - ServerWebExchange
      返回:
      session ID 或者 null
    • analyseSessionId

      public static reactor.core.publisher.Mono<String> analyseSessionId(org.springframework.web.server.ServerWebExchange exchange)
      解析 Session ID

      如果请求中有 X_HERODOTUS_SESSION_ID 头,那么则返回 SessionId,意味着前后端加密有效。 这种处理方式,主要解决在没有使用系统 Session 的环境下,单独调用接口特别是测试接口时,提示 Session 过期的问题。

      参数:
      exchange - ServerWebExchange
      返回:
      session ID 或者 null