下载依赖
pip install django-cors-headers
注册利用
INSTALLED_APPS = [
...
'corsheaders',...
]
增加中间件
CorsMiddleware
应放在尽可能高的,特地是能够产生如 Django 的回应任何中间件之前CommonMiddleware
或白噪声的WhiteNoiseMiddleware
。
MIDDLEWARE = [
...
'corsheaders.middleware.CorsMiddleware',# 上面这句是默认的第一句
'django.middleware.common.CommonMiddleware',...
]
为视图增加注解
from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
def user_login(request):
...
额定的设置
# settings.py
# 跨域 django-cors-headers 配置
CORS_ALLOW_CREDENTIALS = True
CORS_ORIGIN_ALLOW_ALL = True
# 受权进行跨站点 HTTP 申请的起源列表
CORS_ALLOW_ORIGINS = ['*']
# 理论申请所容许的 HTTP 动词列表。默认为
CORS_ALLOW_METHODS = [
'DELETE','GET','OPTIONS','PATCH','POST','PUT',]
# 收回理论申请时能够应用的非标准 HTTP 标头的列表。默认为:CORS_ALLOW_HEADERS = [
'accept','accept-encoding','authorization','content-type','dnt','origin','user-agent','x-csrftoken','x-requested-with',]
更多配置信息