From d1c6fa3e2e7ef9a5009e798909ed80aecf2eb1db Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期二, 29 十一月 2022 11:40:30 +0800 Subject: [PATCH] Merge branch 'master' of http://42.193.1.25:9521/r/sccg_ui --- src/http/index.js | 100 ++++++++++++-------------------------------------- 1 files changed, 24 insertions(+), 76 deletions(-) diff --git a/src/http/index.js b/src/http/index.js index 516bac4..9dee29b 100644 --- a/src/http/index.js +++ b/src/http/index.js @@ -1,12 +1,6 @@ import axios from 'axios' -import { - handleResponseSuccess, - handleResponseFail, - handleRequest -} from './interceptor-handler' -import { - showFullScreenLoading -} from '@/utils/loading' +import {handleRequest, handleResponseFail, handleResponseSuccess} from './interceptor-handler' +import {showFullScreenLoading} from '@/utils/loading' // URL 璁板綍鍣� import urlRecorder from './url-recorder' @@ -23,7 +17,7 @@ * @return {string} */ function addVersion(url) { - return url.includes('?') ? `${url}&v=${Date.now()}` : `${url}?v=${Date.now()}` + return url.includes('?') ? `${url}&v=${Date.now()}` : url; } export default { @@ -64,7 +58,7 @@ * @param {boolean?} throwError 鏄惁涓嶄娇鐢ㄩ粯璁ょ殑寮傚父澶勭悊鏂规硶锛岃�屾妸寮傚父鎶涘嚭鏉� * @return {Promise} 杩斿洖涓�涓猵romise瀵硅薄銆傚叾涓璽hen鏂规硶浼犻�掑洖鍖呬腑鐨刣ata鏁版嵁锛沜atch浜嬩欢鍒欎紶閫掓暣涓洖鍖咃紝鍏跺弬鏁颁负{data:{},status{code:123,message:'xxx'}} */ - post(url, data = {}, params = {}, throwError) { + post(url, data = {}, params= {}, throwError) { const config = { method: 'POST', url, @@ -101,9 +95,10 @@ return axiosInstance(config) }, // DELETE鏇存柊鏁版嵁 - delete(url, data = {}, throwError) { + delete(url, params = {}, data = {}, throwError) { const config = { method: 'delete', + params, url, data: JSON.stringify(data), errorHandler: (!throwError && this.defaultErrorHandler) || null, @@ -119,79 +114,31 @@ return axiosInstance(config) }, /** - * 閫氳繃琛ㄥ崟get涓嬭浇鏂囦欢銆傚苟缁熶竴澶勭悊甯歌鐨勯敊璇� + * 閫氳繃琛ㄥ崟涓嬭浇鏂囦欢銆傚苟缁熶竴澶勭悊甯歌鐨勯敊璇� * @param {string} url - * @param {String} fileName 鏂囦欢鍚� + * @param params 浼犲弬 * @param {Object?} data 涓婁紶杩涘害鍥炶皟锛屽弬鏁颁负event * @param {Function?} throwError 鏄惁涓嶄娇鐢ㄩ粯璁ょ殑寮傚父澶勭悊鏂规硶锛岃�屾妸寮傚父鎶涘嚭鏉� * @return {Promise} 杩斿洖涓�涓猵romise瀵硅薄 */ - downloadFile(url, params, data = {}, throwError) { - const { - fileName, - type - } = params - return axiosInstance({ - method: 'GET', + downloadFile(url, params= {}, data = {}, throwError) { + const config = { + method: 'POST', url, - responseType: 'arraybuffer', + params, data: JSON.stringify(data), + responseType: 'arraybuffer', errorHandler: (!throwError && this.defaultErrorHandler) || null, - timeout: 50000, headers: { 'Content-Type': 'application/json' - } - }).then(response => { - const blob = new Blob([response], { - type - }) // 涓嶅吋瀹箃ype - // 鍒╃敤a鏍囩瀹炵幇涓嬭浇 - const link = document.createElement('a') - link.style.display = 'none' - link.setAttribute('type', MimeType) // 骞朵笉鏀寔 - const downUrl = window.URL.createObjectURL(blob) - link.href = downUrl - // 娣诲姞鍒版祻瑙堝櫒涓轰簡鍏煎 firefox - document.body.appendChild(link) - // 涓轰簡鍏煎qq娴忚鍣紝fileName涓繀椤诲姞涓婃枃浠跺悗缂� - link.download = fileName - link.click() - document.body.removeChild(link) - }) - }, - /** - * 閫氳繃a鏍囩鎵撳紑鏂囦欢 - * @param {string} url - */ - downloadFileByA(url) { - // const {fileName} = params - // 鍒╃敤a鏍囩瀹炵幇涓嬭浇 - const link = document.createElement('a') - link.style.display = 'none' - link.href = `${process.env.VUE_APP_DOWN_FILE}${url}` - // 娣诲姞鍒版祻瑙堝櫒涓轰簡鍏煎 firefox - document.body.appendChild(link) - // 涓轰簡鍏煎qq娴忚鍣紝fileName涓繀椤诲姞涓婃枃浠跺悗缂� - // link.download = fileName - link.click() - document.body.removeChild(link) - return Promise.resolve() - }, - /** - * 閫氳繃a鏍囩涓嬭浇鏂囦欢 - * @param {string} url - */ - downloadFileByAtag(url) { - // 鍒╃敤a鏍囩瀹炵幇涓嬭浇 - const link = document.createElement('a') - link.download = url - link.target = '_blank' - link.style.display = 'none' - link.href = url - document.body.appendChild(link) - link.click() - document.body.removeChild(link) - return Promise.resolve() + }, + withCredentials: this.withCredentials + } + urlRecorder.add(config) + if (data.showLoading === undefined) { + showFullScreenLoading() + } + return axiosInstance(config) }, /** * 閫氳繃琛ㄥ崟post涓婁紶鏂囦欢骞舵帴鏀秊son鏍煎紡鐨勬暟鎹�傚苟缁熶竴澶勭悊甯歌鐨勯敊璇� @@ -209,8 +156,9 @@ data: formElem instanceof FormData ? formElem : new FormData(formElem), onUploadProgress, errorHandler: (!throwError && this.defaultErrorHandler) || null, - timeout: 500000, - enableRepeat: true + headers: { + 'Content-Type': 'multipart/form-data' + }, }) } } \ No newline at end of file -- Gitblit v1.8.0