在使用axios進行網絡請求時,我們通常會期待得到一個json格式的響應結果,以便我們可以輕松地對數據進行處理。然而,有時候我們可能會遇到一些奇怪的響應類型,比如HTML、XML、二進制數據等。
那么,我們該如何處理這些不是json格式的響應呢?下面是一些可能有用的方法。
// 使用responseType配置項將響應類型設置為blob,以便獲取二進制數據 axios.get('/api/download', { responseType: 'blob' }).then(response =>{ // 處理二進制數據 }) // 使用transformResponse配置項將響應數據進行轉換 axios.get('/api/xml', { transformResponse: [ function (data) { // 將XML數據轉換為json格式 const parser = new DOMParser() const xml = parser.parseFromString(data, 'text/xml') const obj = {} obj['xml'] = xml return obj } ] }).then(response =>{ // 處理轉換后的json格式數據 })
總之,處理不是json格式的響應需要我們根據實際情況選擇合適的方案,來將響應數據轉換為可處理的格式。
上一篇css3畫疊加的矩形
下一篇h5頁面和vue一樣嗎