小编wal*_*tis的帖子

从 blob React-Native 打开 PDF (expo)

我是新来的,我正在使用react-native和expo制作我的第一个应用程序,并且我遇到了来自API的PDF响应的问题。

这里的目标是能够调用 API 并接收应用程序/pdf 响应,并在按下按钮时下载它。所有这些工作都很顺利,但我无法设法解释 pdf 响应并从中执行某些操作。

我尝试过的一些方法:

  • 在 pdfViewer 中解释它
  • 使用 Expo 文件系统下载
  • 在新窗口或 webView 中打开它
  • 使用 rn-fetch-blob (因为世博会而不能)
  • 使用 Print.printToFileAsync
  • ...

大多数问题来自这样一个事实:我需要文件中的 uri 来对其执行任何操作,但看起来我无法从 Blob 创建 url。当我尝试 createObjectURL 时出现此错误

错误:无法为 blob 创建 URL!

// Working API Call
  response = await axios.get(apiUri.DownloadDocument +id) this.props.id);

// Blob creation
  const file = new Blob(
    [response.data],
    {type: 'application/pdf'});

// This line throws an error
  const fileURL = URL.createObjectURL(file);
  WebBrowser.openBrowserAsync(fileURL);
Run Code Online (Sandbox Code Playgroud)

如果我用 POSTMAN 调用 API,他无法预览响应,但我可以下载它,并且它是 pdf 文件,没有问题。

此问题可能与62387371 59622283 55507959有关

因为我对此很陌生,所以我可能会以完全错误的方式做这件事。感谢您的时间和专业知识。这是我通过 console.log(response.data) 获得的 …

pdf api blob react-native expo

7
推荐指数
1
解决办法
2007
查看次数

标签 统计

api ×1

blob ×1

expo ×1

pdf ×1

react-native ×1