一.try,catchjavascript
try{內容是異步的,同步捕捉錯誤無效}前端
async onSaveMaterial(params, type) { try { let res = await fetch('請求接口路徑') if (res.code === 0) { alert('ok!') } }catch(error){ console.log(error.message) } }
二. axiosjava
方法一:axios.interceptors.response統一得到錯誤信息
ios
let fetcher = axios.create({ timeout: 6000, // 設置請求超時時間6s baseURL: baseUrl, }) fetcher.interceptors.request.use(function (config) { config.headers.ssotoken = storage.get('ssotoken') config.headers.ssouid = storage.get('ssouid') return config }, function (error) { return Promise.reject(error) }) fetcher.interceptors.response.use(function (response) { if (response.data.code === 2) { location.href = login } return response.data }, function (error) { console.log(error.message) // 統一處理錯誤信息 return Promise.reject(error) })
方法二:用.catch單個處理錯誤信息axios
fetcher.post('請求路徑',{參數})
.then(res => {console.log(res)})
.catch(error => { console.log(error) // 捕捉到錯誤信息 })
三.Raven.js ===> 前端代碼異常監控異步