Axios
https://github.com/axios/axios
HTTP 請求庫 - Axios 源碼分析
[譯] Axios 內部設計分析
How to Implement an HTTP Request Library with Axios
https://www.tutorialdocs.com/article/axios-learn.html
Axios 的設計優點︰
1.發送請求函數的處理邏輯
正如前面章節提到的,axios 並沒有把發送請求的 dispatchRequest 函數當成特殊函數對待。實際上,dispatchRequest 函數放在佇列的中間,從而保證佇列處理的一致性並提高代碼的可讀性。
2.適配器的處理邏輯
在適配器的的處理邏輯中,http 和 xhr 模組(http 用於 Node.js 發送請求,xhr 用於流覽器發送請求)並不直接放在 dispatchRequest 模組中,而是通過預設配置從 default.js 引入。從而不僅可以保證兩個模組的低耦合,而且為將來的用戶預留了定制化請求的空間。
3.取消 HTTP 請求的處理邏輯
在取消 HTTP 請求的邏輯中,axios 設計使用 Promise 作為觸發器,把 resolve 方法作為 callback 的參數傳遞到外面。這樣不僅確保內部邏輯的一致性,還可以確保在需要取消請求時,不必直接修改相關類的樣本資料,從而可以最大程度避免侵入其他的模組。
#Axios, http, request, xhr, ajax
留言
張貼留言