import requests import json def test_create_goal_response(): """ 测试创建目标API的响应格式 """ print("=== 测试创建目标API的响应格式 ===") # 创建目标的测试数据 goal_data = { "userId": 1, "subject": "数学", "goalType": "选择题", "goalContent": "测试目标内容", "difficulty": "简单", "totalQuantity": 5, "estimatedTime": 30 } print(f"创建目标请求数据: {json.dumps(goal_data, indent=2, ensure_ascii=False)}") try: # 调用创建目标API response = requests.post( "http://localhost:8080/api/goals", json=goal_data, timeout=10 ) print(f"响应状态码: {response.status_code}") if response.status_code == 200: result = response.json() print(f"完整响应: {json.dumps(result, ensure_ascii=False, indent=2)}") # 检查响应结构 print("\n=== 响应结构分析 ===") print(f"响应码: {result.get('code')}") print(f"消息: {result.get('message')}") print(f"时间戳: {result.get('timestamp')}") if 'data' in result: data = result['data'] print(f"data字段存在: {type(data)}") if isinstance(data, dict): print(f"goalId在data中: {data.get('goalId')}") print(f"userId在data中: {data.get('userId')}") print(f"subject在data中: {data.get('subject')}") else: print(f"data不是字典类型: {data}") else: print("data字段不存在") # 检查Android应用期望的字段 print("\n=== Android应用期望的字段 ===") print(f"直接的goalId字段: {result.get('goalId')}") # 如果有goalId,测试用这个goalId调用Coze API if 'data' in result and isinstance(result['data'], dict) and 'goalId' in result['data']: goal_id = result['data']['goalId'] print(f"\n=== 使用正确的goalId({goal_id})测试Coze API ===") coze_data = { "userId": 1, "goalId": goal_id, "subject": "数学", "knowledgePoint": "测试正确goalId", "difficulty": "简单", "type": "选择题", "totalQuantity": 1 } coze_response = requests.post( "http://localhost:8080/api/coze/generate-questions", json=coze_data, timeout=30 ) if coze_response.status_code == 200: coze_result = coze_response.json() print(f"Coze API响应: {json.dumps(coze_result, ensure_ascii=False, indent=2)}") if coze_result.get('success') and coze_result.get('questions'): for question in coze_result['questions']: print(f"生成的题目goalId: {question.get('goalId')}") else: print(f"Coze API调用失败: {coze_response.status_code}") else: print(f"创建目标失败: {response.text}") except Exception as e: print(f"请求异常: {e}") if __name__ == "__main__": test_create_goal_response()