类 SaLoginParameter

java.lang.Object
cn.dev33.satoken.stp.parameter.SaLoginParameter
直接已知子类:
SaLoginModel

public class SaLoginParameter extends Object
在调用 `StpUtil.login()` 时的 配置参数对象,决定登录的一些细节行为
        // 例如:在登录时指定 token 有效期为七天,代码如下:
        StpUtil.login(10001, new SaLoginParameter().setTimeout(60 * 60 * 24 * 7));
 
从以下版本开始:
1.13.2
作者:
click33
  • 构造器详细资料

    • SaLoginParameter

      public SaLoginParameter()
    • SaLoginParameter

      public SaLoginParameter(SaTokenConfig config)
  • 方法详细资料

    • setDefaultValues

      public SaLoginParameter setDefaultValues(SaTokenConfig config)
      根据 SaTokenConfig 对象初始化默认值
      参数:
      config - 使用的配置对象
      返回:
      对象自身
    • setExtra

      public SaLoginParameter setExtra(String key, Object value)
      写入扩展数据(只在jwt模式下生效)
      参数:
      key - 键
      value - 值
      返回:
      对象自身
    • getExtra

      public Object getExtra(String key)
      获取扩展数据(只在jwt模式下生效)
      参数:
      key - 键
      返回:
      扩展数据的值
    • haveExtraData

      public boolean haveExtraData()
      判断是否设置了扩展数据(只在jwt模式下生效)
      返回:
      /
    • setTerminalExtra

      public SaLoginParameter setTerminalExtra(String key, Object value)
      写入本次登录挂载到 SaTerminalInfo 的自定义扩展数据
      参数:
      key - 键
      value - 值
      返回:
      对象自身
    • getTerminalExtra

      public Object getTerminalExtra(String key)
      获取本次登录挂载到 SaTerminalInfo 的自定义扩展数据
      参数:
      key - 键
      返回:
      扩展数据的值
    • haveTerminalExtraData

      public boolean haveTerminalExtraData()
      判断是否设置了本次登录挂载到 SaTerminalInfo 的自定义扩展数据
      返回:
      /
    • getCookieTimeout

      public int getCookieTimeout()
      计算 Cookie 时长
      返回:
      /
    • create

      public static SaLoginParameter create()
      静态方法获取一个 SaLoginParameter 对象
      返回:
      SaLoginParameter 对象
    • getDeviceType

      public String getDeviceType()
      返回:
      此次登录的客户端设备类型
    • setDeviceType

      public SaLoginParameter setDeviceType(String deviceType)
      参数:
      deviceType - 此次登录的客户端设备类型
      返回:
      对象自身
    • getDeviceId

      public String getDeviceId()
      获取 此次登录的客户端设备id
      返回:
      deviceId 此次登录的客户端设备id
    • setDeviceId

      public SaLoginParameter setDeviceId(String deviceId)
      设置 此次登录的客户端设备id
      参数:
      deviceId - 此次登录的客户端设备id
    • getReplacedRange

      public SaReplacedRange getReplacedRange()
      当 isConcurrent=false 时,顶人下线的范围 (CURR_DEVICE_TYPE=当前指定的设备类型端, ALL_DEVICE_TYPE=所有设备类型端)
      返回:
      replacedMode 顶人下线的范围
    • setReplacedRange

      public SaLoginParameter setReplacedRange(SaReplacedRange replacedRange)
      当 isConcurrent=false 时,顶人下线的范围 (CURR_DEVICE_TYPE=当前指定的设备类型端, ALL_DEVICE_TYPE=所有设备类型端)
      参数:
      replacedRange - /
      返回:
      对象自身
    • getOverflowLogoutMode

      public SaLogoutMode getOverflowLogoutMode()
      获取 溢出 maxLoginCount 的客户端,将以何种方式注销下线 (LOGOUT=注销下线, KICKOUT=踢人下线, REPLACED=顶人下线)
      返回:
      overflowLogoutMode /
    • setOverflowLogoutMode

      public SaLoginParameter setOverflowLogoutMode(SaLogoutMode overflowLogoutMode)
      设置 溢出 maxLoginCount 的客户端,将以何种方式注销下线 (LOGOUT=注销下线, KICKOUT=踢人下线, REPLACED=顶人下线)
      参数:
      overflowLogoutMode - /
      返回:
      对象自身
    • getIsLastingCookie

      public Boolean getIsLastingCookie()
      返回:
      是否为持久Cookie(临时Cookie在浏览器关闭时会自动删除,持久Cookie在重新打开后依然存在)
    • setIsLastingCookie

      public SaLoginParameter setIsLastingCookie(Boolean isLastingCookie)
      参数:
      isLastingCookie - 是否为持久Cookie(临时Cookie在浏览器关闭时会自动删除,持久Cookie在重新打开后依然存在)
      返回:
      对象自身
    • getTimeout

      public long getTimeout()
      返回:
      指定此次登录 token 有效期,单位:秒
    • setTimeout

      public SaLoginParameter setTimeout(long timeout)
      参数:
      timeout - 指定此次登录 token 有效期,单位:秒 (如未指定,自动取全局配置的 timeout 值)
      返回:
      对象自身
    • getActiveTimeout

      public Long getActiveTimeout()
      返回:
      此次登录 token 最低活跃频率,单位:秒(如未指定,则使用全局配置的 activeTimeout 值)
    • setActiveTimeout

      public SaLoginParameter setActiveTimeout(long activeTimeout)
      参数:
      activeTimeout - 指定此次登录 token 最低活跃频率,单位:秒(如未指定,则使用全局配置的 activeTimeout 值)
      返回:
      对象自身
    • getIsConcurrent

      public Boolean getIsConcurrent()
      返回:
      是否允许同一账号多地同时登录 (为 true 时允许一起登录, 为 false 时新登录挤掉旧登录)
    • setIsConcurrent

      public SaLoginParameter setIsConcurrent(Boolean isConcurrent)
      参数:
      isConcurrent - 是否允许同一账号多地同时登录 (为 true 时允许一起登录, 为 false 时新登录挤掉旧登录)
      返回:
      对象自身
    • getIsShare

      public Boolean getIsShare()
      返回:
      在多人登录同一账号时,是否共用一个 token (为 true 时所有登录共用一个token, 为 false 时每次登录新建一个 token)
    • setIsShare

      public SaLoginParameter setIsShare(Boolean isShare)
      参数:
      isShare - 在多人登录同一账号时,是否共用一个 token (为 true 时所有登录共用一个token, 为 false 时每次登录新建一个 token)
      返回:
      对象自身
    • getMaxLoginCount

      public int getMaxLoginCount()
      返回:
      同一账号最大登录数量,-1代表不限 (只有在 isConcurrent=true, isShare=false 时此配置项才有意义)
    • setMaxLoginCount

      public SaLoginParameter setMaxLoginCount(int maxLoginCount)
      参数:
      maxLoginCount - 同一账号最大登录数量,-1代表不限 (只有在 isConcurrent=true, isShare=false 时此配置项才有意义)
      返回:
      对象自身
    • getMaxTryTimes

      public int getMaxTryTimes()
      返回:
      在每次创建 token 时的最高循环次数,用于保证 token 唯一性(-1=不循环尝试,直接使用)
    • setMaxTryTimes

      public SaLoginParameter setMaxTryTimes(int maxTryTimes)
      参数:
      maxTryTimes - 在每次创建 token 时的最高循环次数,用于保证 token 唯一性(-1=不循环尝试,直接使用)
      返回:
      对象自身
    • getExtraData

      public Map<String,Object> getExtraData()
      返回:
      扩展信息(只在jwt模式下生效)
    • setExtraData

      public SaLoginParameter setExtraData(Map<String,Object> extraData)
      参数:
      extraData - 扩展信息(只在jwt模式下生效)
      返回:
      对象自身
    • getToken

      public String getToken()
      返回:
      预定Token(预定本次登录生成的Token值)
    • setToken

      public SaLoginParameter setToken(String token)
      参数:
      token - 预定Token(预定本次登录生成的Token值)
      返回:
      对象自身
    • getIsWriteHeader

      public Boolean getIsWriteHeader()
      返回:
      是否在登录后将 Token 写入到响应头
    • setIsWriteHeader

      public SaLoginParameter setIsWriteHeader(Boolean isWriteHeader)
      参数:
      isWriteHeader - 是否在登录后将 Token 写入到响应头
      返回:
      对象自身
    • getTerminalExtraData

      public Map<String,Object> getTerminalExtraData()
      获取 本次登录挂载到 SaTerminalInfo 的自定义扩展数据
      返回:
      /
    • setTerminalExtraData

      public SaLoginParameter setTerminalExtraData(Map<String,Object> terminalExtraData)
      设置 本次登录挂载到 SaTerminalInfo 的自定义扩展数据
      参数:
      terminalExtraData - /
      返回:
      对象自身
    • toString

      public String toString()
      覆盖:
      toString 在类中 Object
    • getDevice

      @Deprecated public String getDevice()
      已过时。

      请更换为 getDeviceType

      返回:
      此次登录的客户端设备类型
    • setDevice

      @Deprecated public SaLoginParameter setDevice(String device)
      已过时。

      请更换为 setDeviceType

      参数:
      device - 此次登录的客户端设备类型
      返回:
      对象自身