我正在尝试从API中获取一些数据。它可以正常工作,并且我的数据已发送到服务器,但出现以下错误消息,不允许我继续操作:
从CORS策略阻止从原点“ http://192.168.80.11:8000/upload/5bc4206e3ff2286d24c58899/”获取“ http://localhost:8000”的访问权限:
所请求的资源上没有“ Access-Control-Allow-Origin”标头。如果不透明的响应满足您的需求,请将请求的模式设置为“ no-cors”以在禁用CORS的情况下获取资源。
我知道这是因为我试图从本地主机中获取数据,并且解决方案应该使用CORS。 但是,如何在响应头中设置Access-Control-Allow-Origin? 我使用Django。 这是在服务器上设置文件:
INSTALLED_APPS = (
...
'corsheaders',
...
)
MIDDLEWARE = [
'corsheaders.middleware.CorsMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
CORS_ORIGINE_ALLOW_ALL= True
CORS_ALLOW_CREDENTIALS = True
#CORS_ORIGINE_ALLOW_ALL= False
CORS_ORIGINE_WHITELIST=(
'http//:192.168.20.29:8000',
'http//:192.168.20.30:8000',
'http//:127.0.0.1:8000',
)
答案 0 :(得分:0)
您是否已将此添加到已安装的应用程序中?
INSTALLED_APPS = (
...
'corsheaders',
...
)
更新
CORS_ORIGIN_ALLOW_ALL
不是CORS_ORIGINE_ALLOW_ALL
CORS_ORIGIN_WHITELIST
不是CORS_ORIGINE_WHITELIST