ShopTRAINING/test/快速验证CORS.py
2025-07-02 11:05:23 +08:00

60 lines
1.8 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
快速验证CORS配置
"""
import requests
import json
def test_cors():
"""快速测试CORS配置"""
api_base = "http://127.0.0.1:5000"
print("🧪 快速CORS验证")
print("=" * 40)
# 测试基础健康检查
try:
print("1. 测试基础连接...")
response = requests.get(f"{api_base}/api/health", timeout=5)
print(f" 状态: {response.status_code}")
print(f" CORS头: {response.headers.get('Access-Control-Allow-Origin', '未设置')}")
except Exception as e:
print(f" ❌ 失败: {e}")
return
# 测试OPTIONS预检
try:
print("2. 测试OPTIONS预检...")
response = requests.options(f"{api_base}/api/training", timeout=5)
print(f" 状态: {response.status_code}")
print(f" 允许来源: {response.headers.get('Access-Control-Allow-Origin', '未设置')}")
print(f" 允许方法: {response.headers.get('Access-Control-Allow-Methods', '未设置')}")
except Exception as e:
print(f" ❌ 失败: {e}")
return
# 测试实际API调用
try:
print("3. 测试API调用...")
headers = {
'Content-Type': 'application/json',
'Origin': 'http://localhost:5173'
}
response = requests.get(f"{api_base}/api/training", headers=headers, timeout=5)
print(f" 状态: {response.status_code}")
print(f" CORS头: {response.headers.get('Access-Control-Allow-Origin', '未设置')}")
except Exception as e:
print(f" ❌ 失败: {e}")
return
print("\n✅ CORS配置验证完成!")
print("💡 如果所有测试都显示 'Access-Control-Allow-Origin: *'则CORS配置正确")
if __name__ == "__main__":
test_cors()