一個axios的簡單教程

轉載於:https://www.jianshu.com/p/13cf01cdb81fnode

轉載僅供我的學習ios

首先要明白的是axios是什麼:axios是基於promise(諾言)用於瀏覽器和node.js是http客戶端。axios

axios的做用是什麼呢:axios主要是用於向後臺發起請求的,還有在請求中作更可能是可控功能。api

特色:支持瀏覽器和node.jspromise

            支持promise瀏覽器

            能攔截請求和響應併發

            能轉換請求和響應數據異步

            能取消請求post

            自動轉換JSON數據學習

             瀏覽器支持防止CSRF(跨站請求僞造)

這裏你必定會想promise是什麼東西,如下是promise的我的理解:

promise是什麼:是一個對象用來傳遞異步操做的信息,它表明了某個將來纔會知道結果的事件(一般是一個異步操做),而且這個事件提供統一的api,可供進一步的處理。

promise的做用:Promise的出現主要是解決地獄回調的問題,好比你須要結果須要請求不少個接口,這些接口的參數須要另外那個的接口返回的數據做爲依賴,這樣就須要咱們一層嵌套一層,可是有了Promise 咱們就無需嵌套。

promise的本質是什麼:分離異步數據獲取和業務

基本使用方法:

axios執行GET請求

 
GET 請求方法

執行POST請求

 
POST請求方法

執行多個併發請求

 
多個併發請求

get和post都是基於promise的因此寫法上很類似,是用then和catch,使用這種方法來進行發送請求。

還有一個axios重要的知識點就是攔截器

攔截器

在請求或響應被 then 或 catch 處理前攔截它們(攔截器能夠作什麼:在請求或者響應時攔截下來進行處理)

攔截器分爲請求攔截器和響應攔截器

請求攔截器(interceptors.requst)是指能夠攔截每次或指定HTTP請求,並可修改配置項。

響應攔截器(interceptors.response)能夠在每次HTTP請求後攔截住每次或指定HTTP請求,並可修改返回結果項。

 

 
攔截器的寫法

攔截器的工做流程:

 
攔截器工做流程

移除攔截器

 
移除攔截器

自定義 axios 實例添加攔截器

 
添加攔截器

取消

使用 cancel token 取消請求

可使用 CancelToken.source 工廠方法建立 cancel token

參考資料:axios中文文檔

做者:GUAN_one 連接:https://www.jianshu.com/p/13cf01cdb81f 來源:簡書
相關文章
相關標籤/搜索