下载依赖
pip install django-cors-headers
注册应用
INSTALLED_APPS = [
...
'corsheaders' ,
...
]
添加中间件
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' ,
]
更多配置信息