react中進一步封裝axios,對錯誤資訊進行攔截
react中進一步封裝axios
之前在react專案中封裝了axios
但是在每次請求的時候都要判斷,後臺返回的狀態碼,很麻煩。
async componentDidMount () {
await $http.get('/station/list').then((res)=>{
this.setState({
data: res.data.data,
total:res.data.data.length
})
if(res.data.data.code!==200) {
console.log("請求成功!")
else{
console.log("請求失敗!")
}
}
}).catch((err)=>{
console.log(err)
})
}
於是可以進一步對axios進行封裝,對axios的響應進行攔截
import axios from "axios";
axios.defaults.baseURL = 'http://xxxxx/api'
const $http = axios.create();
$http.interceptors.request.use(config => {
// 給請求頭加上Authorization的欄位,值為token
config.headers.Authorization = window.sessionStorage.getItem('token')
config.headers.authJWT = window.sessionStorage.getItem('token')
return config
})
// 對響應進行攔截
$http.interceptors.response.use((response)=>{
if(response.data.code==="200") {
console.log('請求成功!');
}else{
console.log('請求失敗!');
}
if(response.status!==200) {
alert("請求失敗!")
}
return response
},(err)=>{
console.log(err);
})
export default $http;
這樣就不用在每次請求的時候都判斷一下狀態碼了
async componentDidMount () {
await $http.get('/station/list').then((res)=>{
this.setState({
data: res.data.data,
total:res.data.data.length
})
console.log(res.data.data);
})
}
請求失敗
請求成功
相關文章
- vue中對axios進行封裝VueiOS封裝
- 【axios】XHR的ajax封裝+axios攔截器呼叫+請求取消iOS封裝
- 封裝axios請求並對提交引數進行校驗封裝iOS
- axios攔截器iOS
- axios 攔截器iOS
- 攔截PHP各種異常和錯誤,發生致命錯誤時進行報警,萬事防患於未然PHP
- 基於原生fetch封裝一個帶有攔截器功能的fetch,類似axios的攔截器封裝iOS
- 通過JNI對C++進行封裝C++封裝
- 對AlamofireObjectMapper進行二次封裝ObjectAPP封裝
- React、Axios、MockJs實現Ajax的請求攔截ReactiOSMockJS
- vue中用axios攔截器攔截請求和響應VueiOS
- vue+axois 封裝請求+攔截器(請求鎖+統一處理錯誤碼)Vue封裝
- Vue 折騰記 - (10) 給axios做個挺靠譜的封裝(報錯,鑑權,跳轉,攔截,提示)VueiOS封裝
- axios原始碼分析——攔截器iOS原始碼
- 前端架構之vue+axios 前端實現登入攔截(路由攔截、http攔截)前端架構VueiOS路由HTTP
- axios的全域性攔截之axios.interceptorsiOS
- gRPC(六)進階:攔截器 interceptorRPC
- React元件中對子元件children進行加強React元件
- 二次封裝axios,根據引數來實現多個請求多次攔截封裝iOS
- 使用 shutter 對網站進行截圖網站
- axios 攔截器 的使用方法iOS
- Android 對 Adapter 的 ItemType 進行封裝簡化AndroidAPT封裝
- 小程式API進行promise封裝APIPromise封裝
- vue-cli 3.0 + 對 axios 封裝VueiOS封裝
- axios封裝iOS封裝
- 封裝axios封裝iOS
- 從“換裝”到“變臉”,遊戲中對美的進一步追求遊戲
- ABP教程-對Person資訊進行操作
- 對 echo 框架進行統一的自定義錯誤處理框架
- Axios、axios攔截器、fetch-jsonp ——0807iOSJSON
- 對Volley框架的一些介面進行封裝:VolleyAir框架封裝AI
- 【菜鳥學Java】14:使用ThreadLocal對Connection進行封裝Javathread封裝
- 如何優雅的在Golang中進行錯誤處理Golang
- vue中axios請求的封裝VueiOS封裝
- vue中axios的使用與封裝VueiOS封裝
- android view 的建立解析,攔截view的建立並進行操作(一)AndroidView
- axios封裝apiiOS封裝API
- [譯]對 React 元件進行單元測試React元件