无法使用React JS文件保存器从字节数组生成pdf

时间:2018-10-18 09:44:47

标签: javascript reactjs spring-boot

当我将response.data打印到浏览器的控制台时,我的Rest呼叫给我以下输出(fileDownload的输出) 我正在服务器端生成PDF,并从那里发送下面的byte []-

%PDF-1.4
%����
1 0 obj
<<
/Creator (Apache FOP Version 2.3)
/Producer (Apache FOP Version 2.3)
/CreationDate (D:20181018150602+05'30')
>>
endobj
2 0 obj
<<
  /N 3
  /Length 3 0 R
  /Filter /FlateDecode
>>
stream
x��gPTY��{�
�M���I��$�$9�
t7��*���""IDp��!�(*�T�idP��QDEei�1�5?��jk�l��}u�w�}u��W�

我正在使用按钮的onclick事件(onDownloadAsPDF)将其另存为pdf,但是pdf被另存为空白。

    onDowloadAsPDF(e){
    e.preventDefault() // Stop form submit
    this.fileDownload(this.state.file).then((response)=>{
      console.log(response.data);
      var FileSaver = require('file-saver')
      let blob = new Blob([response.data], { type: 'application/pdf' })
      FileSaver.saveAs(blob, 'response.pdf')
    })
  }

    fileDownload(file){
    const url = 'http://localhost:8080/upload/getpdf';
    const formData = new FormData();
    for (var i =0; i<file.length;i++) {
        formData.append('file',file[i])
    }
    const config = {
        headers: {
          'Access-Control-Allow-Origin' : '*',
    'Access-Control-Allow-Methods' : 'GET,PUT,POST,DELETE,PATCH,OPTIONS',
            'content-type': 'multipart/form-data'
        }
    }
    return  axios.post(url, formData,config)
  }

请让我知道是否需要其他信息。     我进行了很多搜索,但无法修复。任何线索将被应用。     谢谢

0 个答案:

没有答案