如何读取角度6中包含文件映射的响应

时间:2019-05-23 13:46:18

标签: angular download angular6 file-handling

我正在从Spring Boot服务器发送“ ResponseEntity>”到angular 6客户端。这里的对象不过是文件(pdf /图像)。

我想在angular 6客户端上读取此响应,并检索map中的所有文件。尝试了很多但无法解决。

Spring启动控制器

`

@RequestMapping( value = "/getFilesForNews",produces =  MediaType.APPLICATION_JSON_VALUE)
        public ResponseEntity<LinkedMultiValueMap<String, Object>> getFilesForNews(String newsId) {

            LinkedMultiValueMap<String, Object> files = this.service.getFilesForNews(Integer.parseInt(UrlEncryption.decrypt(newsId)));

         return ResponseEntity.ok()
                 .contentType(MediaType.MULTIPART_FORM_DATA)
                 .header(HttpHeaders.CONTENT_DISPOSITION, "attachment")
                 .body(files);
        }`

角度服务

`public getFilesForNews(newsId) {
   return this.http.get(this.url+"/getFilesForNews?newsId="+newsId,{ responseType : 'arraybuffer' });
 }`

Component.ts文件

`public getFilesForNews() { this.service.getFilesForNews(this.newsId).subscribe(response=>{
      var res:any = response;
    })
  }`

0 个答案:

没有答案