Kamixitong/app/utils/cors_middleware.py

23 lines
834 B
Python
Raw Normal View History

2025-11-22 16:48:45 +08:00
from flask import request, jsonify, make_response
from functools import wraps
def add_cors_headers(response):
"""为响应添加CORS头部"""
2025-11-22 20:32:49 +08:00
# 允许特定源访问
2025-11-22 16:48:45 +08:00
response.headers['Access-Control-Allow-Origin'] = '*'
response.headers['Access-Control-Allow-Methods'] = 'GET, POST, PUT, DELETE, OPTIONS'
response.headers['Access-Control-Allow-Headers'] = 'Content-Type, Authorization, X-Requested-With'
response.headers['Access-Control-Max-Age'] = '86400' # 24小时
return response
def cors_after(response):
"""在每个请求后添加CORS头部"""
return add_cors_headers(response)
def handle_preflight():
"""处理预检请求"""
if request.method == "OPTIONS":
response = make_response()
response = add_cors_headers(response)
return response
return None