1、安装了django-cors-headers库
pip install django-cors-headers
2、配置django-cors-headers
在项目的settings.py文件中,找到MIDDLEWARE列表,并确保CorsMiddleware位于其他中间件的前面。
eg:
MIDDLEWARE = [
'corsheaders.middleware.CorsMiddleware',
# 其他中间件
# ...
]
3、添加配置
允许跨域请求的配置:
在settings.py文件中,添加以下配置来允许跨域请求。如果允许来自任意域名的请求,可以将CORS_ORIGIN_ALLOW_ALL设置为True。
CORS_ALLOWED_ORIGINS = [
'http://允许的域名',
# 其他允许的域名
]
# 或者允许来自任意域名的请求
# CORS_ORIGIN_ALLOW_ALL = True
3.1、请求包含了自定义的头部信息
例如Authorization,你还需要配置以下设置:
CORS_ALLOW_HEADERS = [
'Authorization',
'Content-Type',
# 其他允许的头部信息
]
请确保在修改完settings.py文件后,重新启动Django服务器。
4、检查响应的CORS头部信息
在浏览器中发起请求并查看响应的头部信息。确认以下响应头部是否存在,并包含正确的值:
Access-Control-Allow-Origin:允许访问的前端域名或*(表示允许任意域名访问)。
Access-Control-Allow-Methods:允许的请求方法,包括UPDATE。
Access-Control-Allow-Headers:允许的请求头部信息。
如果这些响应头部信息不正确或不存在,你可能需要重新检查前面的配置步骤。