【发布时间】:2016-11-23 17:41:49
【问题描述】:
我正在尝试在 Django 上运行的项目中使用带有 JavaScript XMLHttpRequest 的 overpass API http://wiki.openstreetmap.org/wiki/Overpass_API,但我不断收到
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://www.google.com/accounts/ClientLogin. (Reason: CORS header 'Access-Control-Allow-Origin' missing).
错误。无论我使用 GET 还是 POST,以及来自任何其他主机,而不仅仅是 overpass API,我都会收到此错误。
我已经安装了 django-cors-headers https://github.com/ottoyiu/django-cors-headers 并按照那里的说明,将“corsheaders”放入 INSTALLED_APPS,将“corsheaders.middleware.CorsMiddleware”、“django.middleware.common.CommonMiddleware”放入 MIDDLEWARE_APPS 和我已经设置了
CORS_ORIGIN_ALLOW_ALL = true
在 settings.py 但似乎没有任何效果。我用
在本地运行它python manage.py runserver
但我也在 openshift 上托管它。这些工作都没有,他们都给出了上面的错误。
如果我在这里遗漏了什么,请告诉我。
【问题讨论】:
-
您是否在尝试访问 openstreetmap/overpass 的 javascript 中遇到此错误?
-
是的,我正在尝试在 javascript 中使用 XmlHttpRequest。
-
这很明显,没有回答问题。我在问您尝试启用 CORS 的站点是否是从不同来源接收请求或向不同来源发出请求的站点......即出现 CORS 错误的 URL 是什么
标签: javascript django cors cross-domain overpass-api