后端
return response()->download(storage_path('app/public').$file,$filename,array( 'Content-Type' => 'application/pdf', ));
前端:
downloadPage(id){ webServices.post('downPage',{"id":id},{responseType:'arraybuffer'}).then((res)=>{ let blob = new Blob([res.data], { type: "application/pdf" }); const elink = document.createElement('a') elink.download = 'testPage.pdf'; elink.style.display = 'none' elink.href = URL.createObjectURL(blob) document.body.appendChild(elink) elink.click() URL.revokeObjectURL(elink.href) // 释放URL 对象 // this.downLoading = false document.body.removeChild(elink) }); },
{responseType:'arraybuffer'}这个一定要传,不然下载的文件就是空白文件