重点:不要用框架封装的uni.request,直接使用没游封装的uni.request()进行请求数据
downloadFapiao ( fphm ) { let url = config. baseUrl + "/ynpstWechatOrder/download-invoice" ; let data = { fphm : fphm } ; uni. showLoading ( { title : "下载中" , duration : 2000 , } ) ; uni. request ( { url : url, responseType : "arraybuffer" , data : data, method : "post" , header : { "content-type" : "application/json" , } , success : ( response ) => { if ( ! response) { uni. showToast ( { title : "下载失败" , duration : 2000 , } ) ; } let pdfData = response. data; let blob = new Blob ( [ pdfData] , { type : "application/pdf;charset=UTF-8" , } ) ; var a = document. createElement ( "a" ) ; document. body. appendChild ( a) ; a. style = "display: none" ; var url = window. URL . createObjectURL ( blob) ; a. href = url; a. download = ` 发票 ${ fphm} .pdf ` ; a. click ( ) ; a. remove ( ) ; window. URL . revokeObjectURL ( url) ; uni. hideLoading ( ) ; uni. showToast ( { title : "下载成功" , duration : 2000 , } ) ; } , ail : ( err ) => { console. log ( err) ; } , } ) ; } ,