我的API(.Net Core)爲每個響應返回一個相關標識頭。這在管道的開始和結束處進行處理,以唯一標識每個與API的交互。如果我的應用程序拋出導致HTTP 500錯誤的異常,就會發生這種情況。當Angular處理HTTP錯誤時爲什麼標題對象爲空
從淨核心API日誌
2017-08-27 18:40:11.1836|Microsoft.AspNetCore.Hosting.Internal.WebHost|INFO|1212dcbb-b2dc-46dd-a66f-2fa3c3c76f13|Request finished in 3526.1966ms 500 |
的GUID在輸出是相關性id,並且可以在格式化的消息的末尾看到的500最終的響應的代碼示例。
角打字稿代碼
在我的角度應用程序的代碼是很簡單...
return this.http.post(
uri,
body)
.map(response => {
// TODO: Handle responses
})
.catch((error:any) => {
// TODO: Handle errors
});
然而,事件的服務器返回500錯誤,error
對象產量調查一個headers
對象是空的,不允許我訪問從服務器返回的任何頭文件。
我可以在Chrome開發人員工具中看到標題出現在響應中。
有沒有一種方法可以在發生錯誤的情況下訪問這些頭文件?
這聽起來像是一個CORS問題。看到這篇文章:https://stackoverflow.com/questions/43067069/angular2-how-to-get-custom-response-headers-cors-issue。 –
您確定該服務將響應對象附加到標頭嗎? – Aravind