前端預覽pdf——直接訪問后臺開放的靜態(tài)資源/文件流

一、直接訪問后臺靜態(tài)資源(靜態(tài)資源文件夾后臺已開放)

作為前端開發(fā)人員,自己用egg.js框架后臺測試

1.egg.js配置開放public靜態(tài)資源文件夾,可以直接接口形式預覽pdf 例:http://127..0.0.1:7001/public/syl.pdf
2.把文件上傳到public文件夾下
3.此處測試案例 為上傳的也是pdf形式文件

egg.js配置

在plugin.js中添加 config.defalut.js中默認可以不需要配置

exports = {
  static: {
      enable: true,
  },
};

返回路徑

可根據(jù)文件名或者某一唯一確定文件的字段 返回路徑
前端直接window.open('http://127..0.0.1:7001/public/syl.pdf (文件名)')

項目中 后臺是 java

1.后臺開發(fā)人員開放spring boot 中static文件夾
2.前端上傳的word 后臺轉pdf放在static文件夾下

warning?。?!
同事在本地開發(fā)環(huán)境中這種方式可以,但是 打完jar包后,部署就找不到靜態(tài)文件夾路徑了,這是個問題。后來還是用了插件預覽。

二、文件流形式

前端把word文件傳給java后臺
后臺把docx/doc格式文件轉為pdf文件流
前端接收到文件流 加上合理形式進行展示

問題

接口返回前端得到是亂碼(只要流正確不影響)
我使用pdf.js方法預覽,詳細可參考鏈接 pdf.js預覽

重點

請求時,加上
responseType: 'blob',
headers: {
"Content-Type": "application/pdf",
},

這兩個一定要加,不然即使后臺流正確,也打不開pdf

//預覽流
export const  wsPreview = (data) => {
    return axios({
        url: `/t/mailInfo/liuText?guid=${data}`,
        method: 'post',
        responseType: 'blob',
        headers: {
            "Content-Type": "application/pdf",
          },
    })
}

此處res是后臺返回的二進制文件流
window.open里的地址參考上面的pdf.js鏈接,從官網(wǎng)上下載pdf.js文件

    //預覽附件
    async preview(item) {
      let res = await this.$api.mail.wsPreview(item.id);
      var href = window.URL.createObjectURL(res);
      window.open(
        "../../static/web/viewer.html?file=" + encodeURIComponent(href)
      );
    },
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • md5sum命令作用:在網(wǎng)絡傳輸、設備之間轉存、復制大文件等時,可能會出現(xiàn)傳輸前后數(shù)據(jù)不一致的情況。這種情況在網(wǎng)絡...
    study_qsy閱讀 295評論 0 0
  • 前臺需要展示圖片,期望后臺直接返回圖片地址,但是后臺給的是的文件流而不是一個圖片地址,需要把文件流轉為base64...
    宏_4491閱讀 338評論 0 0
  • 克隆倉庫到本地 git clone 這里寫倉庫地址 ,克隆的時候倉庫地址記得選SSH地址 更新文件 進入項目所在本...
    0error_閱讀 1,404評論 0 0
  • 我是黑夜里大雨紛飛的人啊 1 “又到一年六月,有人笑有人哭,有人歡樂有人憂愁,有人驚喜有人失落,有的覺得收獲滿滿有...
    陌忘宇閱讀 8,834評論 28 54
  • 信任包括信任自己和信任他人 很多時候,很多事情,失敗、遺憾、錯過,源于不自信,不信任他人 覺得自己做不成,別人做不...
    吳氵晃閱讀 6,364評論 4 8

友情鏈接更多精彩內(nèi)容