# 接口文档模板 ## 接口信息 - **接口名称**: 执行Salesforce登出操作(源ORG) - **接口路径**: /salesforce/login/logout - **请求方法**: POST - **模块归属**: datai-salesforce-auth - **版本号**: v1.0 - **创建日期**: 2026-01-14 - **最后更新**: 2026-01-14 ## 功能描述 执行Salesforce源ORG的登出操作,从登录历史记录中获取最新的成功登录信息,并使用该Session ID执行登出。登出成功后会清除本地缓存的Session信息。 ## 请求参数 无需请求参数。 ## 响应数据 ### 成功响应 **HTTP 状态码**: 200 OK ```json { "code": 200, "message": "登出成功", "data": null } ``` ### 失败响应 **HTTP 状态码**: 400/500 ```json { "code": 400, "message": "未找到登录历史记录", "data": null } ``` | 错误码 | 错误信息 | 描述 | |--------|----------|------| | 400 | 未找到登录历史记录 | 系统中没有找到登录历史记录 | | 400 | 登出失败 | 登出操作执行失败 | | 500 | 登出失败: 系统错误 | 系统内部错误 | ## 接口示例 ### 请求示例 ```bash curl -X POST "http://localhost:8080/salesforce/login/logout" \ -H "Content-Type: application/json" ``` ### 响应示例 **成功**: ```json { "code": 200, "message": "登出成功", "data": null } ``` **失败**: ```json { "code": 400, "message": "未找到登录历史记录", "data": null } ``` ## 错误处理 1. **未找到登录历史记录**: 检查是否已经登录过 2. **登出失败**: 检查Session ID是否有效 3. **系统错误**: 记录错误日志并返回通用错误信息 ## 注意事项 1. 登出操作会从登录历史记录中获取最新的成功登录信息 2. 登出成功后会清除本地缓存的Session信息 3. 如果没有登录历史记录,登出操作将失败 4. 登出操作不影响其他ORG的登录状态 ## 相关接口 - [登录操作](0001-do-login.md) - 执行Salesforce登录操作 - [获取当前登录信息](0003-current.md) - 获取当前登录信息 - [自动登录](0004-auto-login.md) - 自动登录(支持源ORG和目标ORG) ## 实现细节 1. 从登录历史记录中获取最新的成功登录信息 2. 提取Session ID、登录类型和ORG类型 3. 调用SalesforceLoginService执行登出 4. 返回登出结果 ## 测试信息 ### 测试环境 - **环境**: 本地开发环境 - **版本**: v1.0 ### 测试用例 | 测试场景 | 输入参数 | 预期结果 | 实际结果 | 状态 | |----------|----------|----------|----------|------| | 登出成功 | 无 | 返回登出成功 | 返回登出成功 | 通过 | | 未登录时登出 | 无 | 返回未找到登录历史记录 | 返回未找到登录历史记录 | 通过 | | Session已过期 | 无 | 返回登出失败 | 返回登出失败 | 通过 |