处理响应创建excel文件时解析URL时出现错误HTTP失败

Posted

技术标签:

【中文标题】处理响应创建excel文件时解析URL时出现错误HTTP失败【英文标题】:error HTTP failure during parsing URL when Handle Response create excel file 【发布时间】:2021-03-08 21:59:35 【问题描述】:

我处理 Angular 7 应用上传文件。我让 Angular App 上传文件

所以我首先选择一个文件然后按上传按钮

然后我希望我将文件下载为输出,但这不会发生

angular 应用程序没有返回下载的文件,所以我在 angular 的响应上有问题,我需要修复它

我在第 115 行的解析链接期间检查了 angular 的休止符,如下图所示。

第 115 行错误角度在线发布订阅

this.http.post('https://localhost:44396/api/ApprovalQuality/', formData).subscribe(
  (data) => ,
  (error) => 
    console.log(error);
  ,
);

上面的响应必须返回 Excel 文件,但显示错误

解析 URL 第 115 行期间出现错误 HTTP 失败且未创建 excel 文件

完整代码

component.html

<input type="file" id="file" (change)="handleFileInput($event.target.files)" />

<button type="button" class="btn btn-success" (click)="uploadFile(files)">
  Upload File
</button>

component.ts

fileToUpload: File = null;

handleFileInput(files: FileList) 
  this.fileToUpload = files.item(0);

public uploadFile = (files) => 
  const formData = new FormData();

  formData.append('file', this.fileToUpload, this.fileToUpload.name);

  this.http
    .post('https://localhost:44396/api/ApprovalQuality/', formData)

    .subscribe(
      (data) => ,
      (error) => 
        console.log(error);
      ,
    );
;

【问题讨论】:

谢谢您的回复,请您在代码修改后写出完整的响应代码 如果可能的话,你能用代码告诉我答案吗 只有在可能的情况下,您才能为您的答案编写示例代码,我需要知道在哪里写入响应类型 text/plain 以及在哪里设置 application/oct-stream 以及在哪里写入 url.createobjecturl 【参考方案1】:

你的 reposeType 是text/plain,它必须设置为application/octet-stream。然后,您可以使用blobURL.createObjectURL 下载excel文件。

【讨论】:

只有在可能的情况下,您才能为您的答案编写示例代码,我需要知道在哪里写入响应类型 text/plain 以及在哪里设置 application/oct-stream 以及在哪里写入 url.createobjecturl

以上是关于处理响应创建excel文件时解析URL时出现错误HTTP失败的主要内容,如果未能解决你的问题,请参考以下文章

为啥 JsonDecoder 在尝试解析邮递员网址但处理其他网址时出现错误?

从 Access 导出到 Excel 时出现日期超出范围错误

使用预签名 URL 将文件上传到 Amazon S3 时出现 CORS 错误

将公式插入单元格 VBA Excel 时出现运行时错误 1004

创建MFC时出现这个错误,怎么解决?

读取 https url 时出现 zip 文件错误