库配置
这篇笔记,是关于跨越的 django—CORS跨域
今天我们来学习下一个开源库django-cors-headers
github上有详细的配置文档说明
1、Install from pip:
pip install django-cors-headers
1
2、and then add it to your installed apps:
INSTALLED_APPS = (
...
'corsheaders',
...
)
3、You will also need to add a middleware class to listen in on responses:
MIDDLEWARE = [ # Or MIDDLEWARE_CLASSES on Django < 1.10
...
'corsheaders.middleware.CorsMiddleware',
'django.middleware.common.CommonMiddleware',
...
]
CORSMIDID餐具应尽可能高的放置,尤其是在任何能产生响应的中间件之前,比如Django的通用中间件或白化的白皮书。如果不是以前,它将无法向这些响应添加CORS头。
此外,如果使用CLSYRePaseHTTPSY引用器,它应该放在Django的CSRFIEWVIEW中间件之前
4、在Django设置中配置中间件的行为。必须将允许跨站点请求的主机添加到CLSIOrthPosixWalelistor,或者将CLSSOrthPosialApple全部设置为true,以允许所有主机。
CORS_ORIGIN_ALLOW_ALL = True
5、另外还有一些白名单、正则url配置,我这里就省略了,我就直接CORS_ORIGIN_ALLOW_ALL = True
示例展示
我接下来利用一个示例,来展示下功能效果
项目配置:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'api.apps.ApiConfig',
'rest_framework',
'corsheaders',
]
from corsheaders.middleware import CorsMiddleware
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'corsheaders.middleware.CorsMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
CORS_ORIGIN_ALLOW_ALL = True
原文:https://blog.csdn.net/u013210620/article/details/80020426