【发布时间】:2018-03-03 19:01:07
【问题描述】:
- 我将
Angular 4 / Ionic 3用于前端/移动应用程序。 - 我正在使用
Django 1.11 for the backend。
当我尝试从浏览器发送请求时:headers.append('Content-Type', 'application/json');headers.append('Access-Control-Allow-Origin', '*');this.http.post('http://0.0.0.0:8000/en/accounts/user/', {} ,
{headers:headers})
在我的 Django 应用程序中,我使用了 django-cors-headers 并设置:
- CORS_ORIGIN_ALLOW_ALL = True
- CORS_ALLOW_CREDENTIALS = True
从浏览器我得到了预期的响应,但是从移动应用程序测试时,CORS 请求似乎没有通过(返回 Response with status: 0 for URL: null)
【问题讨论】:
-
您在手机上使用的网址如何?
-
看起来您正在开发服务器上运行浏览器。我可以想象您的手机无法访问您的开发服务器。您的移动版本中使用的 URL 是否可访问?如果您的应用程序位于可访问的位置,但仍然无法通过有效的 url 访问 API,那么您可能需要检查服务器是否允许 OPTIONS 标头(预检请求)。默认情况下,某些工具可能没有 OPTIONS 标头。 link
-
Django 服务器在 0.0.0.0:8000 启动 Ionic 在 0.0.0.0:8100 启动,如果这是你的要求?
标签: python django angular django-cors-headers