django2.1.4版本设置跨域问题
直接
pip install django-cors-headers
django会升级为django3版本,会导致原先的djang2项目出现各种幺蛾子,坑了我一下午时间
所以要安装
pip install django-cors-headers==2.4.0
setting.py 中配置
INSTALLED_APPS = [
‘corsheaders’,
]
MIDDLEWARE = [
…
‘corsheaders.middleware.CorsMiddleware’,
‘django.middleware.common.CommonMiddleware’,
…
]
设置跨域的基本参数
CORS_ORIGIN_ALLOW_ALL :默认是False, 如果为 True, 则允许所有网站跨域
CORS_ORIGIN_WHITELIST : 设置允许跨域的网站,添加白名单,如果CORS_ORIGIN_ALLOW_ALL 设置为 True,白名单则失效
CORS_ALLOW_METHODS : 跨站资源共享允许那些请求方式,默认是允许所有的请求方式
跨域增加忽略(根据需求自行配置)
CORS_ALLOW_CREDENTIALS = True
CORS_ORIGIN_ALLOW_ALL = True
CORS_ORIGIN_WHITELIST = (
‘http://127.0.0.1:8080’,
)
CORS_ALLOW_METHODS = (
‘DELETE’,
‘GET’,
‘OPTIONS’,
‘PATCH’,
‘POST’,
‘PUT’,
‘VIEW’,
)
CORS_ALLOW_HEADERS = (
‘XMLHttpRequest’,
‘X_FILENAME’,
‘accept-encoding’,
‘authorization’,
‘content-type’,
‘dnt’,
‘origin’,
‘user-agent’,
‘x-csrftoken’,
‘x-requested-with’,
‘Pragma’,
‘Cookie’,
)