2015-10-24 54 views
0

對於失敗的請求,Angular具有其自己的狀態碼0。我正在嘗試使API調用保持我的應用程序打開30-40分鐘。角度返回狀態碼0而不是302

當我打電話時,API請求會觸發服務器,並重定向到由其他應用程序託管的登錄頁面。當我進行任何API調用時,我可以在提琴手中看到響應302,並且應該被重定向到登錄頁面。

問題是,它正在被重定向到HTTP,我的應用程序正在使用HTTPS,因此在控制檯中給出了混合內容錯誤。

我寫了responseError攔截器來捕獲狀態碼302,並對位置標題進行一些操作,並重定向以將URL轉換爲HTTPS而不是HTTP。這似乎沒有工作。resposeError我只能看到響應代碼0而不是302.

是否有必要從服務器發送重定向請求訪問控制源標頭?

有人可以幫助這裏或建議一種方式。

在此先感謝。

回答

0

只有以4或5開頭的狀態碼纔是錯誤。因此,只有當你得到這些代碼之一時,纔會調用錯誤攔截器,或者由於其他原因請求失敗。

您的JavaScript代碼中永遠也不會獲得302,因爲瀏覽器將始終嘗試遵循重定向。

您的問題是mixed content(http和https)。 CORS與它無關。修復您的服務器以使用正確的協議發送URL。