退出登录
POST/auth/v1/user/signout
接口说明
用户退出登录接口,用于安全地终止用户会话。
功能特性
- 清理后台token对应的refresh_token记录
- 标记access_token为已失效状态
- 支持客户端主动清理本地token缓存
- 如果是退出第三方系统授权登录态, 会根据三方身份源的配置决定是否生成三方的退出登录链接
入参要求
必需参数
Authorization: 请求头中传入Bearer认证,格式为Bearer ${access_token}
可选参数
client_id: 应用对应的客户端id,默认为环境id,可以不传x-device-id: 设备id,当前登录设备的idredirect_uri: 登出成功后重定向地址(可选)state: 登出成功后重定向地址携带的参数(可选)
前置条件
- 用户必须处于已登录状态
- access_token须有效且未过期
- 客户端需要缓存access_token用于退出登录
出参说明
成功响应
- 返回200状态码表示退出登录成功
- 可选的
redirect_uri用于页面重定向
退出登录请求示例
POST /auth/v1/user/signout
Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczovL2FwaS5leGFtcGxlLmNvbSIsInN1YiI6Ijk4NzY1NDMyMTAxMjM0NTY3ODkiLCJhdWQiOiJkZW1vLWFwcC0yZjhhOWMzZTFiNGQiLCJleHAiOjE3MzQ2NzU4ODksImlhdCI6MTczNDY2ODY4OSwic2NvcGUiOiJ1c2VyIn0.dGhpc19pc19hX2Zha2Vfc2lnbmF0dXJlX2Zvcl9leGFtcGxlX3B1cnBvc2VzX29ubHlfZG9fbm90X3VzZV9pbl9wcm9kdWN0aW9uX2Vudmlyb25tZW50X3RoaXNfaXNfbm90X3JlYWxfdG9rZW5fZGF0YQ
x-device-id: device_123456
Content-Type: application/json
{}
响应示例
成功响应
{
"redirect_uri": "https://example/logout-callback?state=logout_state_123"
}
参数错误响应
{
"error": "invalid_argument",
"error_code": 3,
"error_description": "device id must less than 72"
}
使用流程
1. 客户端清理本地token
- 删除本地存储的access_token和refresh_token
- 清除相关的用户会话信息
2. 调用退出登录接口
- 使用有效的access_token调用退出登录接口
- 可选传入重定向地址和状态参数
3. 处理服务端响应
- 如果返回重定向地址,进行页面跳转
- 如果返回错误信息,进行相应处理
4. 验证token状态
- 可调用验证token接口确认token已失效
注意事项
安全规范
- JWT token是客户端保存的,需要客户端主动清理
- 退出登录后,access_token将立即失效
- refresh_token将被标记为不可用状态
错误处理
- 如果access_token已过期,退出登录接口仍会返回成功
- 设备id长度超过限制会导致参数错误
- 服务器内部错误需要重试机制
Request
Query Parameters
client_id string
应用对应的客户端id,可从云开发平台-->身份认证-->开发设置获取。默认为环境id,可以不传
Header Parameters
x-device-id string
设备id,当前登录设备的id。客户端应随机生成,并缓存到客户端。此参数与登录账号数有关
Authorization stringrequired
当前登录用户的access_token, 值的格式为Bearer xxx
Example: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJodHRwczovL2FwaS5leGFtcGxlLmNvbSIsInN1YiI6Ijk4NzY1NDMyMTAxMjM0NTY3ODkiLCJhdWQiOiJkZW1vLWFwcC0yZjhhOWMzZTFiNGQiLCJleHAiOjE3MzQ2NzU4ODksImlhdCI6MTczNDY2ODY4OSwic2NvcGUiOiJ1c2VyIn0.dGhpc19pc19hX2Zha2Vfc2lnbmF0dXJlX2Zvcl9leGFtcGxlX3B1cnBvc2VzX29ubHlfZG9fbm90X3VzZV9pbl9wcm9kdWN0aW9uX2Vudmlyb25tZW50X3RoaXNfaXNfbm90X3JlYWxfdG9rZW5fZGF0YQ
- application/json
Body
redirect_uri string
登出成功后重定向地址, 可选
state string
登出成功后重定向地址携带的参数, 可选
Responses
- 200
- 400
- 500
A successful response.
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
redirect_uri string
登出成功后重定向地址, 可选
{
"redirect_uri": "string"
}
An unexpected error response.
Response Headers
- application/json
- Schema
- Example (from schema)
- Example
Schema
error 错误信息 (string)
error_code int32
error_description 错误描述 (string)
{
"error": "string",
"error_code": 0,
"error_description": "string"
}
{
"error": "invalid_argument",
"error_code": 3,
"error_description": "device id must less than 72"
}
An unexpected error response.
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
error 错误信息 (string)
error_code int32
error_description 错误描述 (string)
{
"error": "string",
"error_code": 0,
"error_description": "string"
}
Loading...