Package cn.dev33.satoken.stp.parameter
Class SaLoginParameter
java.lang.Object
cn.dev33.satoken.stp.parameter.SaLoginParameter
- Direct Known Subclasses:
SaLoginModel
在调用 `StpUtil.login()` 时的 配置参数对象,决定登录的一些细节行为
// 例如:在登录时指定 token 有效期为七天,代码如下:
StpUtil.login(10001, new SaLoginParameter().setTimeout(60 * 60 * 24 * 7));
- Since:
- 1.13.2
- Author:
- click33
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic SaLoginParametercreate()静态方法获取一个 SaLoginParameter 对象int计算 Cookie 时长Deprecated.获取 此次登录的客户端设备id获取扩展数据(只在jwt模式下生效)intint获取 溢出 maxLoginCount 的客户端,将以何种方式注销下线 (LOGOUT=注销下线, KICKOUT=踢人下线, REPLACED=顶人下线)获取:在 isConcurrent=false 时,决定新旧设备谁将放弃会话 (OLD_DEVICE=旧设备下线,新设备登录成功, NEW_DEVICE=新设备登录失败,旧设备维持在线)当 isConcurrent=false 时,顶人下线的范围 (CURR_DEVICE_TYPE=当前指定的设备类型端, ALL_DEVICE_TYPE=所有设备类型端)获取 在登录时,是否立即创建对应的 Token-Session (true=在登录时立即创建,false=在第一次调用 getTokenSession() 时创建)getTerminalExtra(String key) 获取本次登录挂载到 SaTerminalInfo 的自定义扩展数据获取 本次登录挂载到 SaTerminalInfo 的自定义扩展数据longgetToken()boolean判断是否设置了扩展数据(只在jwt模式下生效)boolean判断是否设置了本次登录挂载到 SaTerminalInfo 的自定义扩展数据setActiveTimeout(long activeTimeout) setCookie(SaCookieConfig cookie) setDefaultValues(SaTokenConfig config) 根据 SaTokenConfig 对象初始化默认值Deprecated.setDeviceId(String deviceId) 设置 此次登录的客户端设备idsetDeviceType(String deviceType) 写入扩展数据(只在jwt模式下生效)setExtraData(Map<String, Object> extraData) setIsConcurrent(Boolean isConcurrent) setIsLastingCookie(Boolean isLastingCookie) setIsShare(Boolean isShare) setIsWriteHeader(Boolean isWriteHeader) setMaxLoginCount(int maxLoginCount) setMaxTryTimes(int maxTryTimes) setOverflowLogoutMode(SaLogoutMode overflowLogoutMode) 设置 溢出 maxLoginCount 的客户端,将以何种方式注销下线 (LOGOUT=注销下线, KICKOUT=踢人下线, REPLACED=顶人下线)setReplacedLoginExitMode(SaReplacedLoginExitMode replacedLoginExitMode) 设置:在 isConcurrent=false 时,决定新旧设备谁将放弃会话 (OLD_DEVICE=旧设备下线,新设备登录成功, NEW_DEVICE=新设备登录失败,旧设备维持在线)setReplacedRange(SaReplacedRange replacedRange) 当 isConcurrent=false 时,顶人下线的范围 (CURR_DEVICE_TYPE=当前指定的设备类型端, ALL_DEVICE_TYPE=所有设备类型端)setRightNowCreateTokenSession(Boolean rightNowCreateTokenSession) 设置 在登录时,是否立即创建对应的 Token-Session (true=在登录时立即创建,false=在第一次调用 getTokenSession() 时创建)setTerminalExtra(String key, Object value) 写入本次登录挂载到 SaTerminalInfo 的自定义扩展数据setTerminalExtraData(Map<String, Object> terminalExtraData) 设置 本次登录挂载到 SaTerminalInfo 的自定义扩展数据setTimeout(long timeout) 设置 Cookie 配置项toString()
-
Field Details
-
cookie
Cookie 配置对象
-
-
Constructor Details
-
SaLoginParameter
public SaLoginParameter() -
SaLoginParameter
-
-
Method Details
-
setDefaultValues
根据 SaTokenConfig 对象初始化默认值- Parameters:
config- 使用的配置对象- Returns:
- 对象自身
-
setExtra
写入扩展数据(只在jwt模式下生效)- Parameters:
key- 键value- 值- Returns:
- 对象自身
-
getExtra
获取扩展数据(只在jwt模式下生效)- Parameters:
key- 键- Returns:
- 扩展数据的值
-
haveExtraData
public boolean haveExtraData()判断是否设置了扩展数据(只在jwt模式下生效)- Returns:
- /
-
setTerminalExtra
写入本次登录挂载到 SaTerminalInfo 的自定义扩展数据- Parameters:
key- 键value- 值- Returns:
- 对象自身
-
getTerminalExtra
获取本次登录挂载到 SaTerminalInfo 的自定义扩展数据- Parameters:
key- 键- Returns:
- 扩展数据的值
-
haveTerminalExtraData
public boolean haveTerminalExtraData()判断是否设置了本次登录挂载到 SaTerminalInfo 的自定义扩展数据- Returns:
- /
-
getCookieTimeout
public int getCookieTimeout()计算 Cookie 时长- Returns:
- /
-
create
静态方法获取一个 SaLoginParameter 对象- Returns:
- SaLoginParameter 对象
-
setupCookieConfig
设置 Cookie 配置项- Parameters:
fun- /- Returns:
- 对象自身
-
getDeviceType
- Returns:
- 此次登录的客户端设备类型
-
setDeviceType
- Parameters:
deviceType- 此次登录的客户端设备类型- Returns:
- 对象自身
-
getDeviceId
获取 此次登录的客户端设备id- Returns:
- deviceId 此次登录的客户端设备id
-
setDeviceId
设置 此次登录的客户端设备id- Parameters:
deviceId- 此次登录的客户端设备id
-
getReplacedRange
当 isConcurrent=false 时,顶人下线的范围 (CURR_DEVICE_TYPE=当前指定的设备类型端, ALL_DEVICE_TYPE=所有设备类型端)- Returns:
- replacedMode 顶人下线的范围
-
setReplacedRange
当 isConcurrent=false 时,顶人下线的范围 (CURR_DEVICE_TYPE=当前指定的设备类型端, ALL_DEVICE_TYPE=所有设备类型端)- Parameters:
replacedRange- /- Returns:
- 对象自身
-
getOverflowLogoutMode
获取 溢出 maxLoginCount 的客户端,将以何种方式注销下线 (LOGOUT=注销下线, KICKOUT=踢人下线, REPLACED=顶人下线)- Returns:
- overflowLogoutMode /
-
setOverflowLogoutMode
设置 溢出 maxLoginCount 的客户端,将以何种方式注销下线 (LOGOUT=注销下线, KICKOUT=踢人下线, REPLACED=顶人下线)- Parameters:
overflowLogoutMode- /- Returns:
- 对象自身
-
getIsLastingCookie
- Returns:
- 是否为持久Cookie(临时Cookie在浏览器关闭时会自动删除,持久Cookie在重新打开后依然存在)
-
setIsLastingCookie
- Parameters:
isLastingCookie- 是否为持久Cookie(临时Cookie在浏览器关闭时会自动删除,持久Cookie在重新打开后依然存在)- Returns:
- 对象自身
-
getTimeout
public long getTimeout()- Returns:
- 指定此次登录 token 有效期,单位:秒
-
setTimeout
- Parameters:
timeout- 指定此次登录 token 有效期,单位:秒 (如未指定,自动取全局配置的 timeout 值)- Returns:
- 对象自身
-
getActiveTimeout
- Returns:
- 此次登录 token 最低活跃频率,单位:秒(如未指定,则使用全局配置的 activeTimeout 值)
-
setActiveTimeout
- Parameters:
activeTimeout- 指定此次登录 token 最低活跃频率,单位:秒(如未指定,则使用全局配置的 activeTimeout 值)- Returns:
- 对象自身
-
getIsConcurrent
- Returns:
- 是否允许同一账号多地同时登录 (为 true 时允许一起登录, 为 false 时新登录挤掉旧登录)
-
setIsConcurrent
- Parameters:
isConcurrent- 是否允许同一账号多地同时登录 (为 true 时允许一起登录, 为 false 时新登录挤掉旧登录)- Returns:
- 对象自身
-
getMaxLoginCount
public int getMaxLoginCount()- Returns:
- 同一账号最大登录数量,-1代表不限 (只有在 isConcurrent=true, isShare=false 时此配置项才有意义)
-
setMaxLoginCount
- Parameters:
maxLoginCount- 同一账号最大登录数量,-1代表不限 (只有在 isConcurrent=true, isShare=false 时此配置项才有意义)- Returns:
- 对象自身
-
getMaxTryTimes
public int getMaxTryTimes()- Returns:
- 在每次创建 token 时的最高循环次数,用于保证 token 唯一性(-1=不循环尝试,直接使用)
-
setMaxTryTimes
- Parameters:
maxTryTimes- 在每次创建 token 时的最高循环次数,用于保证 token 唯一性(-1=不循环尝试,直接使用)- Returns:
- 对象自身
-
getExtraData
- Returns:
- 扩展信息(只在jwt模式下生效)
-
setExtraData
- Parameters:
extraData- 扩展信息(只在jwt模式下生效)- Returns:
- 对象自身
-
getToken
- Returns:
- 预定Token(预定本次登录生成的Token值)
-
setToken
- Parameters:
token- 预定Token(预定本次登录生成的Token值)- Returns:
- 对象自身
-
getIsWriteHeader
- Returns:
- 是否在登录后将 Token 写入到响应头
-
setIsWriteHeader
- Parameters:
isWriteHeader- 是否在登录后将 Token 写入到响应头- Returns:
- 对象自身
-
getTerminalExtraData
获取 本次登录挂载到 SaTerminalInfo 的自定义扩展数据- Returns:
- /
-
setTerminalExtraData
设置 本次登录挂载到 SaTerminalInfo 的自定义扩展数据- Parameters:
terminalExtraData- /- Returns:
- 对象自身
-
getRightNowCreateTokenSession
获取 在登录时,是否立即创建对应的 Token-Session (true=在登录时立即创建,false=在第一次调用 getTokenSession() 时创建)- Returns:
- /
-
setRightNowCreateTokenSession
设置 在登录时,是否立即创建对应的 Token-Session (true=在登录时立即创建,false=在第一次调用 getTokenSession() 时创建)- Parameters:
rightNowCreateTokenSession- /- Returns:
- 对象自身
-
getCookie
- Returns:
- Cookie 配置对象
-
setCookie
- Parameters:
cookie- Cookie 配置对象- Returns:
- 对象自身
-
getReplacedLoginExitMode
获取:在 isConcurrent=false 时,决定新旧设备谁将放弃会话 (OLD_DEVICE=旧设备下线,新设备登录成功, NEW_DEVICE=新设备登录失败,旧设备维持在线)- Returns:
- /
-
setReplacedLoginExitMode
设置:在 isConcurrent=false 时,决定新旧设备谁将放弃会话 (OLD_DEVICE=旧设备下线,新设备登录成功, NEW_DEVICE=新设备登录失败,旧设备维持在线)- Parameters:
replacedLoginExitMode- /- Returns:
- 对象自身
-
toString
-
getDevice
Deprecated.请更换为 getDeviceType
- Returns:
- 此次登录的客户端设备类型
-
setDevice
Deprecated.请更换为 setDeviceType
- Parameters:
device- 此次登录的客户端设备类型- Returns:
- 对象自身
-