当前位置: 首页 > 知识库问答 >
问题:

下载文件后出错-Angular

闻人举
2023-03-14

我有一个执行数据下载的函数。它会产生一个新的结果。xlsx文件。它按预期工作。功能是

public downloadData(employeesFiltered: boolean){

this.DataService.getDataDownload(this.DataService.getDataObject(), employeesFiltered)
.subscribe((data: Response) => {
  let fileName = this.utility.getFileName(data.headers);
  let contentType = this.utility.getContentType(data.headers);

  let blob: Blob = new Blob([data.arrayBuffer()], {type: contentType});
  console.log(blob);

  let a = window.document.createElement("a");
  a.href = window.URL.createObjectURL(blob);
  a.download = fileName;

  document.body.appendChild(a);
  a.click();
  document.body.removeChild(a);

}

问题是,完成后,无论我在应用程序中做什么,它都会抛出一个错误

RangeError:UINT16数组的字节长度应为2的倍数

而且,

SyntaxError:意外标记筛 在JSON中的位置0

记录在下面

不知何故,似乎以下对API的调用已损坏。

任何帮助都将不胜感激。

共有1个答案

沈淇
2023-03-14

问题不应该与下载本身有关,而应该与处理异常的方式有关。我猜测,它与此错误有关error.json不是函数

我发现这个答案可能是你需要的。

 类似资料:
  • 我有以下代码来下载通过TCP传输的文件: 一旦所有的字节都被处理了(它们总是被处理的,它像正常的一样工作,只是不退出循环),文件就被创建了,没有一个问题,但是,循环没有退出。

  • 我使用DropBox API在Xamarin中实现Dropbox。表单(NET标准)。我上传文件成功,但下载时收到此错误 Dropbox。Api。BadInputException:调用API函数“文件/下载”时出错:错误的HTTP“Content-Type”标头:“Application/x-www-form-urlencoded”。期待“text/平原”、“text/平原;charset=ut

  • 问题内容: 我正在使用它向用户发送文件 用户下载后我想删除该文件,我该怎么做? 编辑:我的情况是这样的,当用户点击下载按钮时,我的脚本将创建一个临时zip文件,然后用户下载该文件,然后该临时zip文件将被删除。 EDIT2:好的最佳方法似乎是运行一个cron作业,该作业每小时将清理一次临时文件。 EDIT3:我使用来测试了我的脚本,除非用户取消下载,否则它将起作用。如果用户取消下载,则zip文件将

  • 下载 <?php /** * 下载文件请求示例 */ require dirname(__DIR__) . '/vendor/autoload.php'; use Yurun\Util\HttpRequest; use Yurun\Util\YurunHttp; use Yurun\Util\YurunHttp\Handler\Swoole; $url = 'http://www.baid

  • 如果我正在使用,我在android 10上不会在较低版本上收到以下错误:DownloadDir=cordova.file.externalRootDirectory“下载/”; E/FileTransfer(5726):{"code": 1,"source":"https://example.azurewebsites.net/api/interactivelabel/export?ItemCod

  • 我已经安装了eclipse oxygen和JDK 8,但是我在下载任何插件(例如tomcat插件)时遇到了问题。如果我尝试从eclipse marketplace安装,我会遇到以下错误: HTTP服务器未知HTTP响应代码(301):HTTP://Tomcat plugin . SF . net/update/content . XML一般连接错误,响应代码=301,头(0)=HTTP/1.1 3