Python 跨来源访问问题-django 2.1.7
我已经通过了所有的SO链接,重新安装了django和django cors头文件,并跟随到了T,但是我们得到了 飞行前错误不允许交叉原点 Django版本2.1.7 settings.py的相关部分Python 跨来源访问问题-django 2.1.7,python,django,cross-domain,Python,Django,Cross Domain,我已经通过了所有的SO链接,重新安装了django和django cors头文件,并跟随到了T,但是我们得到了 飞行前错误不允许交叉原点 Django版本2.1.7 settings.py的相关部分 INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'djang
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'corsheaders',
'uploads.core',
]
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'corsheaders.middleware.CorsMiddleware',
'django.middleware.common.CommonMiddleware',
'corsheaders.middleware.CorsPostCsrfMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
CORS_ORIGIN_ALLOW_ALL = True
CorsMiddleware应该放在尽可能高的位置,尤其是在任何可以生成响应的中间件之前,比如Django的
CommonMiddleware
或Whitenoise的WhiteNoiseMiddleware
。如果不是在之前,它将无法将CORS头添加到这些响应中
MIDDLEWARE = [
'corsheaders.middleware.CorsMiddleware', # <-- should be at the top
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'corsheaders.middleware.CorsPostCsrfMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
中间件=[
“corsheaders.middleware.CorsMiddleware”,这是一个问题,因为给定的Django包是针对Djangov2.2>
这里您使用的是2.1,因此它不支持它
您需要手动从HttpResponse传递头文件问题可能在前端。在进行API调用时,它必须设置正确的头文件值。感谢您的建议,但我们已经包含了“crossDomain:true”在ajax请求中..除了我经历过的每个SO线程之外,将责任完全放在服务器生成的响应头上感谢您的建议,但我已经尝试过:(…因为我看到它没有任何区别,所以我将它放回我共享的代码片段中的位置。