1.ajax:是指一種建立交互式網頁應用的網頁開發技術,而且能夠作到無需從新加載整個網頁的狀況下,可以更新部分網頁,也叫做局部更新 優缺點: 1)局部更新 2)原生支持,不須要任何插件 3)原生支持,不須要任何插件 4)可能破壞瀏覽器後退功能 5)嵌套回調,難以處理 2.axios:是一個基於 promise 的 HTTP 庫,能夠用在瀏覽器和 node.js 中 特色: 1)從瀏覽器中建立 XMLHttpRequests 2)從 node.js 建立 http 請求 3)支持 Promise API 4)攔截請求和響應 5)轉換請求數據和響應數據 6)取消請求 7)自動轉換 JSON 數據 8)客戶端支持防護 XSRF 3.fetch:使用了ES6中的promise對象。Fetch是基於promise設計的。Fetch函數就是原生js,沒有使用XMLHttpRequest對象。 優缺點: 1)更加底層,提供的API豐富(request, response) 2)脫離了XHR,是ES規範裏新的實現方式 3)fetch是一個低層次的API,你能夠把它考慮成原生的XHR,因此使用起來並非那麼舒服,須要進行封裝 4)fetch只對網絡請求報錯,對400,500都當作成功的請求,須要封裝去處理 5)fetch默認不會帶cookie,須要添加配置項 6)fetch不支持abort,不支持超時控制,使用setTimeout及Promise.reject的實現的超時控制並不能阻止請求過程繼續在後臺運行,形成了流量的浪費 7)fetch沒有辦法原生監測請求的進度,而XHR能夠