2017-09-22 52 views
0
  • 我正在使用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 CORS未能通過移動應用程序提交的帖子請求

在我的Django應用程序我用django-cors-headers並設置:
- CORS_ORIGIN_ALLOW_ALL = True
- CORS_ALLOW_CREDENTIALS = True

從眉毛呃,我得到預期的迴應,但來自移動應用程序測試時的CORS請求似乎並沒有傳遞(返回Response with status: 0 for URL: null

 Here are the request headers when i click to send request 對此有何建議?

+1

從移動設備中查看您使用的網址的方式如何? – Mariusz

+0

看起來您正在開發服務器上運行您的瀏覽器。我可以想象你的手機無法訪問你的開發服務器。移動版本中使用的網址是否可以訪問?如果您的應用程序位於可訪問的位置,並且仍然無法通過有效的URL訪問API,則可能需要檢查服務器是否允許OPTIONS標頭(預檢請求)。有些工具可能沒有默認允許的OPTIONS標頭。 [鏈接](https://stackoverflow.com/questions/46247261/cors-fails-on-request-with-options-response-with-status-0) – Nrzonline

+0

Django服務器啓動在0.0.0.0:8000 離子是開始於0.0.0.0:8100,如果這是你的要求? – lcadc17

回答

0

我想今天我是愚蠢的,或者是星期五,我不知道,但問題是網址,或許Mariusz & Nrzonline建議。

我已經改變了:
this.http.post('http://0.0.0.0:8000/en/accounts/user/', {} ,this.http.post('http://192.168.178.2:8000/en/accounts/user/', {} ,

,現在它可以作爲魅力。

相關問題