利用python第三方库解决跨域问题
pip3 install django-cors-headers
- 设置
seetings.py
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'process', 'docker_manage', 'accounts', 'accounts.templatetags', 'api_server', 'api_container', 'api_process', 'corsheaders', # 新增跨域 ] # 注意,corsheaders.middleware.CorsMiddleware一定要在django.middleware.common.CommonMiddleware之前。 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', 'static.api_utils.middleware.ExceptionTestMiddleware', # 自定义中间键捕获全局异常 ] CORS_ORIGIN_ALLOW_ALL = True # 如果是True,白名单不启用 CORS_ALLOW_METHODS = ( 'DELETE', 'GET', 'OPTIONS', 'PATCH', 'POST', 'PUT', ) CORS_ALLOW_HEADERS = ( 'accept-encoding', 'authorization', 'content-type', 'dnt', 'origin', 'user-agent', 'x-csrftoken', 'x-requested-with' )