如何在Angular中使用REST API Web服务下载.xlsx文件?

时间:2018-12-26 11:07:53

标签: angular spring-boot

我想从rest API下载.xlsx文件。但是服务呼叫失败。我的HTML代码如下,

 <button type="submit" class="btn btn-primary" (click)="showPDF()">Download</button>

我的ts文件是

public showPDF(): void {
this.bidService.getPDF().subscribe(
  (data) => {
    console.log(" showPDF success " );
    if (data) {
      const myBlob: Blob = new Blob([(<any>data)._body]);
      importedSaveAs(myBlob, 'SampleExcel.xlsx');
    }
  },
  (err) => {
    console.log(" show pdf failed " );});

我的服务文件是

public getPDF(): Observable<any> {   
    let uri = 'http://localhost:8080/download/pdf';
    const httpOptions = {
      headers: new HttpHeaders({ 'responseType':  'ResponseContentType.Blob',
      'Content-Type':  'application/vnd.ms-excel'})};
    return this.http.get(uri, httpOptions);
}

我总是收到此错误日志“显示pdf失败”。但是,当我尝试从要下载的URL [http://localhost:8080/download/pdf]文件中下载.xlsx文件时。因此,我希望Rest API没有问题。我是新手。您能否建议我一个实现此目标的想法。预先感谢。

0 个答案:

没有答案