axios 內部原理學習記錄

2022-07-18 07:12:10 字數 704 閱讀 4400

前提:一次面試被問到了,axios有什麼特點,對比一下ajax。答的很不滿意。

axios是乙個基於promise的http請求庫,可用於瀏覽器和 node。可以說是目前最為常用的http庫,有必要了解一下其內部的實現原理。

同時支援瀏覽器端和服務端的請求。由於axios的這一特性,vue的服務端渲染對於axios簡直毫無抵抗力。 這很牛x啊!

下面選部分重要**分析。

function

getdefaultadapter()

else

if (typeof process !==『undefined『)

return

adapter;

}

到這裡真相大白,這裡通過  xmlhttprequest  和  process 來判斷是瀏覽器環境還是node環境(學習了!),  從而在不同的環境提供不同的http請求模組,實現客戶端和服務端程式的相容。

同理,我們在做ssr服務端渲染時,也可以使用這個方法來判斷**當前的執行環境。

知識點:

xmlhttprequest  是瀏覽器內建的乙個物件,它為客戶端提供了在客戶端和伺服器之間傳輸資料的功能。

process 物件是node內建的乙個全域性變數,提供有關資訊,控制當前 node.js 程序。

編譯原理 學習記錄4

直接遞迴 呈現出u x uy u rightarrow xuy u xu y形式的文法產生式 間接遞迴 具有u xu yu mathop rightarrow limits xuy u xuy 形式的推導 產生式呈u u yu rightarrow uy u uy 形式如果是經過多步推導得到,則稱之...

編譯原理 學習記錄11

上回,為了解決移進 規約時的幾個問題,引入了幾個定義 短語 設有文法g z w xuy是它的乙個句型,如果有 z xu yz mathop rightarrow limits xuy z xuy 並且u uu mathop rightarrow limits u u u 則稱句型xuy中子串u為句型...

編譯原理 學習記錄6

正規集 字母表 sigma 上的正規表示式e,所描述的語言集合l e 從e到l e 的變換有如下規則 el e epsilon empty a e 1e 1 e1 l e 1e 1 e1 e 1e 2e 1e 2 e1 e2 l e 1e 1 e1 l e 2e 2 e2 e 1e 1 e1 e 2...