Django CORS error 跨域问题 解决方案

  • 注释掉  ‘django.middleware.csrf.CsrfViewMiddleware’, 这个配置文件中的这句话
MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    # 'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

 

  • 通过 pip install django-cors-headers 安装这个包文件
pip install django-cors-headers
  • INSTALLED_APPS 中 加上 ‘corsheaders’,
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'corsheaders', # 加载corsheaders,这个一定要加
    'users'
]
  • MIDDLEWARE 中 加上 ‘corsheaders.middleware.CorsMiddleware’,
MIDDLEWARE = [
    'corsheaders.middleware.CorsMiddleware', # 加上这句话
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    '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

 

请登录后发表评论

    没有回复内容