修煉js 8 發起http請求的方式

2021-10-25 02:55:44 字數 1736 閱讀 5320

近兩天在公司寫登入的時候發現我居然快忘記fetch請求和原生實現請求的方式了,估計是太久沒看了荒廢了,在此記錄一下發起http請求的方式,方便後續自己檢視。

雖然我們在真實的專案開發中很少用到原生ajax但是我們還是需要知道如何編寫原生ajax。

)jquery ajax 終究還是老了,它隨著jquery 一起沒落了,隨著前端框架和原生js的迅速崛起,原本屬於jquery 的王朝時代已然宣告滅亡,當然在那個時代jquery ajax 還是很好用的接下來看看優點。

優點的話我就只能想到乙個 ,相對原生語法更簡潔,加上它本身操作dom的簡潔性和鏈式操作。

// get

$.ajax(}

);// post

$.ajax(}

)

fetch 被成為ajax的替代品,我並不這樣以為,而且fetch 是未封裝的原生請求方式,意味著開發者可自行封裝fetch 且不會讓專案的體積變大。那麼fetch 憑什麼可以替代ajax呢 。

優點如下:

1、語法簡潔,更加語義化

2、基於標準 promise 實現,支援 async/await

3、同構方便,使用 isomorphic-fetch

接下來我們來看下fetch 請求的方法,後面我會附上自己寫的乙個fetch請求

fetch

(url,),

body:

'yourdata'})

.then

(data=>`)

//到此資料就拿到了})

})

axios 請求其實還是 xmlhttprequest 請求,不過,是使用promise封裝實現。由於各大框架統一都是推薦axios來請求資料,axios已然成為主流。

優點如下:

1、支援promise api

2、從客戶端防止csrf

3、提供併發請求api

接下來我們看下axios用法

async

getuserlist()

// 或者

axios.

get(url)

.then

(data=>

)//當然post也可以這樣

)}}

雖然現在請求的方式那麼多,但是還是需要根據專案來選擇適合的方式,避免專案體積變得龐大,當然個人專案就沒必要考慮這麼多的東西,看自己個人習慣來選擇請求方式就好了。

JS(8)內建物件

js中的物件分為3種 自定義物件,內建物件,瀏覽器物件 前面兩種都是js基礎內容,屬於ecmascript,瀏覽器物件屬於js獨有的 js提供了多個內建屬性 math,date,array,string等屬性名 方法名 功能math.pi 圓周率math.floor 向下取整 math.ceil 向...

JS 8月30日錯門記

下面哪種查詢元素的方式書寫有誤 adocument.html b document.body c document.head d document.title 正確答案 a 解析 document.body獲取body document.head獲取head document.title獲取titl...

微信PC掃碼支付 二 發起支付

統一下單 public object pay mapmap throws payexception if stringutils.isblank orderid if stringutils.isblank prices if stringutils.isblank amountpaid if st...