58 lines
1.7 KiB
Python
58 lines
1.7 KiB
Python
#!/usr/bin/env python3
|
|
import requests
|
|
import json
|
|
from api_tester import APITester
|
|
from db_config import load_db_config
|
|
|
|
def debug_single_request():
|
|
print("Debug API 请求")
|
|
print("=" * 50)
|
|
|
|
# 获取测试数据
|
|
tester = APITester("http://192.168.1.83:5001")
|
|
|
|
db_config = load_db_config()
|
|
if not db_config.connect():
|
|
print("数据库连接失败")
|
|
return
|
|
|
|
devices = db_config.get_devices(1)
|
|
if not devices:
|
|
print("未找到设备数据")
|
|
return
|
|
|
|
device_sn = devices[0]['device_sn']
|
|
print(f"使用设备序列号: {device_sn}")
|
|
|
|
# 测试每个接口
|
|
endpoints = [
|
|
('upload_health_data', tester.generate_health_data(device_sn)),
|
|
('upload_device_info', tester.generate_device_info(device_sn)),
|
|
('upload_common_event', tester.generate_common_event(device_sn))
|
|
]
|
|
|
|
for endpoint, test_data in endpoints:
|
|
print(f"\n--- 测试 {endpoint} ---")
|
|
url = f"http://192.168.1.83:5001/{endpoint}"
|
|
|
|
print(f"URL: {url}")
|
|
print(f"数据: {json.dumps(test_data, indent=2, ensure_ascii=False)[:500]}...")
|
|
|
|
try:
|
|
response = requests.post(url, json=test_data, timeout=10)
|
|
print(f"状态码: {response.status_code}")
|
|
print(f"响应头: {dict(response.headers)}")
|
|
print(f"响应内容: {response.text}")
|
|
|
|
if response.status_code == 200:
|
|
print("✅ 请求成功")
|
|
else:
|
|
print(f"❌ 请求失败: {response.status_code}")
|
|
|
|
except Exception as e:
|
|
print(f"❌ 请求异常: {e}")
|
|
|
|
db_config.disconnect()
|
|
|
|
if __name__ == "__main__":
|
|
debug_single_request() |