Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
请求的资源Django和ReactJS上不存在“Access Control Allow Origin”标头_Django_Reactjs_Cors_Django Cors Headers - Fatal编程技术网

请求的资源Django和ReactJS上不存在“Access Control Allow Origin”标头

请求的资源Django和ReactJS上不存在“Access Control Allow Origin”标头,django,reactjs,cors,django-cors-headers,Django,Reactjs,Cors,Django Cors Headers,目前我有Django 1.98作为后端,React作为前端 我得到了这个错误: 访问位于的XMLHttpRequest 起源 已被CORS策略阻止:否 “Access Control Allow Origin”标头出现在请求的服务器上 资源 我在我的VirtualViroment上安装了django cors headers==2.4.0 这是my settings.py文件: 你知道怎么解决吗? 谢谢。尝试添加: CORS_ORIGIN_WHITELIST = ( 'example.c

目前我有Django 1.98作为后端,React作为前端

我得到了这个错误:

访问位于的XMLHttpRequest 起源 已被CORS策略阻止:否 “Access Control Allow Origin”标头出现在请求的服务器上 资源

我在我的VirtualViroment上安装了django cors headers==2.4.0

这是my settings.py文件:

你知道怎么解决吗? 谢谢。

尝试添加:

CORS_ORIGIN_WHITELIST = (
    'example.com',
    'localhost:3000',
    '127.0.0.1:3000',
    'more.domain.or.subdomains'
)
不要忘记也添加中间件

MIDDLEWARE = [  # Or MIDDLEWARE_CLASSES on Django < 1.10
    ...
    'corsheaders.middleware.CorsMiddleware',
    'django.middleware.common.CommonMiddleware',
    ...
]
django cors头文件是相当简单的,我认为您的配置是正确的

然而,我也遇到了一个难题: 您的uploads目录可能不是通过Django提供的,而是由服务器直接作为静态文件最佳实践和Django中几乎默认的行为提供的。即使是内置的开发服务器也可以在不调用Django应用程序的情况下提供静态文件


由于未调用您的应用程序,django cors header无法将cors header应用于这些响应。

我也遇到了同样的问题,我认为这是以下方面的问题:

SECURE_SSL_REDIRECT = True
我不知道禁用它的影响,但将其设置为:

SECURE_SSL_REDIRECT = False
这会使cors问题消失。

确保https://mywebsite:8000/uploads/vtt/ 是正确的URL。 在我的例子中,我使用了错误的端口,因为我的API使用了不同的端口。
我把8000换成了52130。

谢谢你的帮助。我想这就是发生在我身上的事情。如何让它通过Django?
SECURE_SSL_REDIRECT = False