# AI配置接口测试功能 ## 功能概述 在AI配置管理页面新增了接口测试功能,允许管理员直接在页面上测试AI配置的接口连通性和正确性。 ## 新增功能 ### 1. 测试按钮 - 在AI配置列表的操作列中新增了"测试"按钮 - 点击后打开接口测试对话框 ### 2. 测试对话框 测试对话框分为左右两个区域: #### 左侧 - 请求配置区域 - **请求URL**: 自动根据配置的API基础URL生成,默认为 `{apiBaseUrl}/v3/chat` - **请求头**: JSON格式的请求头,自动包含Authorization和Content-Type - **请求体**: JSON格式的请求体,基于Coze API标准格式生成 #### 右侧 - 响应结果区域 - **状态码**: 显示HTTP响应状态码,带颜色标识 - **响应头**: 显示服务器返回的响应头信息 - **响应体**: 显示服务器返回的响应内容,自动格式化JSON ### 3. 操作按钮 - **发送测试请求**: 发送HTTP请求到配置的API端点 - **格式化请求**: 格式化请求头和请求体的JSON格式 - **格式化响应**: 格式化响应体的JSON格式 - **复制响应**: 将响应内容复制到剪贴板 - **重置**: 重置测试数据到初始状态 ## 技术实现 ### 1. 请求构建 基于AiChatServiceImpl中的实现,自动构建符合Coze API标准的请求: ```json { "bot_id": "配置的Bot ID", "workflow_id": "配置的Workflow ID (可选)", "user_id": "test_user_时间戳", "stream": false, "additional_messages": [ { "role": "user", "content": "你好,这是一个测试消息,请回复确认接口正常工作。", "content_type": "text", "type": "question" } ] } ``` ### 2. 请求头处理 - 自动添加Authorization Bearer Token - 自动添加Content-Type: application/json - 支持合并自定义请求头 ### 3. 响应处理 - 显示完整的HTTP状态码 - 显示所有响应头信息 - 自动格式化JSON响应体 - 支持非JSON响应的显示 ### 4. 错误处理 - 网络错误处理 - JSON格式错误提示 - HTTP错误状态码提示 ## 使用方法 ### 1. 打开测试对话框 1. 在AI配置列表中找到要测试的配置 2. 点击操作列中的"测试"按钮 3. 测试对话框自动打开并填充默认数据 ### 2. 自定义测试参数 - 可以修改请求头添加额外的头信息 - 可以修改请求体中的消息内容 - 可以调整其他API参数 ### 3. 发送测试请求 1. 点击"发送测试请求"按钮 2. 等待请求完成(显示加载状态) 3. 查看右侧的响应结果 ### 4. 分析测试结果 - **状态码 200**: 请求成功,配置正常 - **状态码 401**: 认证失败,检查API Token - **状态码 400**: 请求参数错误,检查Bot ID等配置 - **状态码 500**: 服务器错误,联系API提供商 ## 支持的配置类型 ### 1. Coze配置 - 完全支持Coze API的测试 - 自动构建符合Coze标准的请求格式 - 支持Bot ID和Workflow ID ### 2. 其他配置类型 - 基础的HTTP请求测试 - 可以通过修改请求体适配不同的API格式 ## 安全考虑 ### 1. Token脱敏 - 在请求头显示中,Token会部分脱敏显示 - 实际请求使用完整的Token ### 2. 跨域处理 - 使用浏览器原生fetch API - 可能受到CORS策略限制 - 建议在开发环境或配置了CORS的环境中使用 ### 3. 数据隔离 - 测试数据不会影响生产数据 - 使用独立的测试用户ID ## 故障排除 ### 1. 网络错误 - 检查API URL是否正确 - 检查网络连接 - 检查防火墙设置 ### 2. 认证错误 - 检查API Token是否正确 - 检查Token是否过期 - 检查Token权限 ### 3. 参数错误 - 检查Bot ID是否正确 - 检查Workflow ID是否存在 - 检查请求体格式 ### 4. CORS错误 - 在开发环境中测试 - 或使用支持CORS的代理服务器 ## 后续扩展 ### 1. 批量测试 - 支持批量测试多个配置 - 生成测试报告 ### 2. 测试历史 - 保存测试历史记录 - 支持测试结果对比 ### 3. 自动化测试 - 定时自动测试配置可用性 - 异常告警通知 ### 4. 更多API支持 - 支持OpenAI API测试 - 支持Claude API测试 - 支持其他AI服务商API测试