# AI接口测试脚本 ## 登录获取Token ```bash curl --location --request POST 'http://127.0.0.1:8080/api/auth/login' \ --header 'Content-Type: application/json' \ --data-raw '{ "username": "admin", "password": "123456" }' ``` **登录响应**: ```json { "code": 200, "message": "操作成功", "data": { "token": "eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxIiwidXNlcm5hbWUiOiJhZG1pbiIsImlhdCI6MTc3NzEyNTI0NywiZXhwIjoxNzc3MTMyNDQ3fQ.dXgYqS5WUB6EOgFSSYfKdwc-EnXfUFuWssd92GMy3HOItqyvTe-jpWa1yu2Yac8MHuXeSsZjZfvMxX8G4WF0Iw", "refreshToken": "eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxIiwiaWF0IjoxNzc3MTI1MjQ3LCJleHAiOjE3NzcxMzk2NDd9.tsgZohWhGhtK75hCCdDlE4sr8z9vZgbnfVL86QZhtDZfrTmc0pFQbpmRD8K4jA6P0eBYSoV-0FIcQ41-rV419w", "expiresIn": 7200000, "userInfo": { "id": 1, "username": "admin", "realName": "系统管理员", "email": "admin@system.com", "phone": "13800000000", "avatar": null, "userType": 1, "lastLoginTime": null } }, "timestamp": "2026-04-25 13:54:07", "success": true } ``` ## 测试命令 ### 1. AI流式问答接口 ```bash curl --location --request POST 'http://127.0.0.1:8080/api/ai/chat/stream' \ --header 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxIiwidXNlcm5hbWUiOiJhZG1pbiIsImlhdCI6MTc3NzIxODYzMywiZXhwIjoxNzc3MjI1ODMzfQ.U1bkByjiPkA3GcUagPRTG1n08aPjW8Tj0vVSclUIqoOgOpZVHAo5a4b8b44Ewt0Td-xdCk9u_pTzdWzWVuzR1Q' \ --header 'Content-Type: application/json' \ --data-raw '{ "message": "2026三峡在哪", "id": "test_req_123", "session_id": "test_sess_123" }' ``` ### 2. 获取用户会话列表接口 ```bash curl --location --request GET 'http://127.0.0.1:8080/api/ai/sessions?page=1&pageSize=10' \ --header 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxIiwidXNlcm5hbWUiOiJhZG1pbiIsImlhdCI6MTc3NzEyNTI0NywiZXhwIjoxNzc3MTMyNDQ3fQ.dXgYqS5WUB6EOgFSSYfKdwc-EnXfUFuWssd92GMy3HOItqyvTe-jpWa1yu2Yac8MHuXeSsZjZfvMxX8G4WF0Iw' ``` ### 3. 获取会话详情接口 ```bash curl --location --request GET 'http://127.0.0.1:8080/api/ai/session/test_sess_123?page=1&pageSize=20' \ --header 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxIiwidXNlcm5hbWUiOiJhZG1pbiIsImlhdCI6MTc3NzEyNTI0NywiZXhwIjoxNzc3MTMyNDQ3fQ.dXgYqS5WUB6EOgFSSYfKdwc-EnXfUFuWssd92GMy3HOItqyvTe-jpWa1yu2Yac8MHuXeSsZjZfvMxX8G4WF0Iw' ``` ### 4. 获取消息引用信息接口 ```bash curl --location --request GET 'http://127.0.0.1:8080/api/ai/message/2/references' \ --header 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxIiwidXNlcm5hbWUiOiJhZG1pbiIsImlhdCI6MTc3NzEyNTI0NywiZXhwIjoxNzc3MTMyNDQ3fQ.dXgYqS5WUB6EOgFSSYfKdwc-EnXfUFuWssd92GMy3HOItqyvTe-jpWa1yu2Yac8MHuXeSsZjZfvMxX8G4WF0Iw' ``` ### 5. 获取会话引用信息接口 ```bash curl --location --request GET 'http://127.0.0.1:8080/api/ai/session/test_sess_123/references' \ --header 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxIiwidXNlcm5hbWUiOiJhZG1pbiIsImlhdCI6MTc3NzEyNTI0NywiZXhwIjoxNzc3MTMyNDQ3fQ.dXgYqS5WUB6EOgFSSYfKdwc-EnXfUFuWssd92GMy3HOItqyvTe-jpWa1yu2Yac8MHuXeSsZjZfvMxX8G4WF0Iw' ``` ### 6. 删除单个会话接口 ```bash curl --location --request DELETE 'http://127.0.0.1:8080/api/ai/session/test_sess_123' \ --header 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxIiwidXNlcm5hbWUiOiJhZG1pbiIsImlhdCI6MTc3NzEyNTI0NywiZXhwIjoxNzc3MTMyNDQ3fQ.dXgYqS5WUB6EOgFSSYfKdwc-EnXfUFuWssd92GMy3HOItqyvTe-jpWa1yu2Yac8MHuXeSsZjZfvMxX8G4WF0Iw' ``` ### 7. 批量删除会话接口 ```bash curl --location --request DELETE 'http://127.0.0.1:8080/api/ai/sessions' \ --header 'Authorization: Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxIiwidXNlcm5hbWUiOiJhZG1pbiIsImlhdCI6MTc3NzEyNTI0NywiZXhwIjoxNzc3MTMyNDQ3fQ.dXgYqS5WUB6EOgFSSYfKdwc-EnXfUFuWssd92GMy3HOItqyvTe-jpWa1yu2Yac8MHuXeSsZjZfvMxX8G4WF0Iw' \ --header 'Content-Type: application/json' \ --data-raw '[ "test_sess_123", "test_sess_456" ]' ``` ## 注意事项 1. **Token有效期**:token有效期为2小时(7200秒),过期后需要重新登录获取 2. **会话ID**:测试时需要使用实际存在的会话ID 3. **消息ID**:获取引用信息时需要使用实际存在的消息ID 4. **权限验证**:确保测试使用的账号有权限访问对应的会话 5. **环境配置**:确保服务运行在 `http://127.0.0.1:8080` ## 测试流程 1. 首先执行登录命令获取token 2. 将获取到的token替换到各个测试命令中 3. 按照顺序执行测试命令,验证接口功能 4. 检查响应结果是否符合预期 ## 故障排查 - **401错误**:token无效或过期,需要重新登录 - **403错误**:权限不足,检查用户是否有权限访问该资源 - **400错误**:参数错误,检查请求参数是否正确 - **500错误**:服务器内部错误,查看服务器日志获取详细信息