深入了解 Fetch 反應處理中的 Promise 和 Promise 鏈
在試驗 fetch() API時,出現了關於行為的有趣觀察的.json().
觀察:
當在傳遞給.then() 的對象文字中返回response. json() 時,將會得到一個Promise 物件。但是,當直接從 .then() 處理程序傳回時,它會傳回實際值。
說明:
呼叫response.json會檢索另一個promise HTTP 回應正文,尚未載入。這是因為您在收到標頭後立即收到了回應對象,但正文尚未可用。
這是承諾的一個基本面向。 Promise 允許從回呼函數傳回 Promise 並隨後採用,因此無需巢狀即可實現可連結性。
替代方法:
等待JSON 後訪問回應狀態body,你可以採用不同的方法:
使用嵌套返回中間結果.then()鏈:
利用異步函數並等待:
注意:
始終建議先驗證回應狀態存取回應內容,因為它可能不會總是包含JSON 資料。
以上是為什麼 `response.json()` 在 Fetch 中傳回 Promise,如何存取結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!