如何解决从Blob react-nativeexpo打开PDF
我是这里的新手,我正在使用react-native和expo开发我的第一个应用程序,并且遇到了API的PDF响应问题。
此处的目标是能够在每次按下按钮时调用API并接收应用程序/ pdf响应并下载。所有这些都可以顺利进行,但是我无法管理任何方法来解释pdf响应并从中进行一些操作。
我尝试过的一些方法:
- 在pdfViewer中对其进行解释
- 使用Expo FileSystem下载
- 在新窗口或webView中打开它
- 使用rn-fetch-blob(由于博览会而无法使用)
- 使用Print.printToFileAsync
- ...
大多数问题来自以下事实:我需要从文件中获取uri才能对其执行任何操作,但看来我无法从Blob创建url。 尝试创建ObjectURL时出现此错误
错误:无法为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);
如果我使用POSTMAN调用API,他将无法预览响应,但是我可以下载它,并且它是pdf文件,没问题。
此问题可能与62387371 59622283 55507959
有关由于我是新手,所以我可能完全用错误的方式来做。感谢您的宝贵时间和专业知识。 这是我通过console.log(response.data)获得的API响应的输出
o << /Registry (Adobe) /Ordering (Identity) /Supplement 0 >>
/FontDescriptor 28 0 R
/CIDToGIDMap /Identity
/W [0 [595 606 629 610 608 389 408 610 315 856 608 276 517 607 629 630 276 693 629 631 631 315 631 496 571 293 742 679 553 679 781 627 598 764 334 545 349 630 630 631 631 358 631 631 631 334 966 631 992 315 587 587 630 681 630 ]
]
>>
endobj
31 0 obj
<< /Length 742 >>
stream
/CIDInit /ProcSet findresource begin
12 dict begin
begincmap
/CIDSystemInfo << /Registry (Adobe) /Ordering (UCS) /Supplement 0 >> def
/CMapName /Adobe-Identity-UCS def
/CMapType 2 def
1 begincodespacerange
<0000> <FFFF>
endcodespacerange
2 beginbfrange
<0000> <0000> <0000>
<0001> <0036> [<0054> <0068> <00E9> <00E2> <0074> <0072> <0065> <0020> <004D> <0061> <0069> <0073> <006F> <006E> <0064> <006C> <0043> <0075> <0031> <0035> <002C> <0030> <005F> <0046> <0049> <004E> <0041> <004C> <0056> <004F> <0045> <0050> <0044> <003A> <0063> <0066> <0062> <0067> <0032> <0039> <002D> <0038> <0033> <0036> <002F> <006D> <0037> <0040> <002E> <0076> <0078> <0070> <0042> <0071> ]
endbfrange
endcmap
CMapName currentdict /CMap defineresource pop
end
end
endstream
endobj
7 0 obj
<< /Type /Font
/Subtype /Type0
/BaseFont /DejaVuSans
/Encoding /Identity-H
/DescendantFonts [30 0 R]
/ToUnicode 31 0 R>>
endobj
2 0 obj
<<
/Type /Pages
/Kids
[
5 0 R
]
/Count 1
/ProcSet [/PDF /Text /ImageB /ImageC]
>>
endobj
xref
0 33
0000000000 65535 f
0000000009 00000 n
0000025854 00000 n
0000000157 00000 n
0000000252 00000 n
0000000690 00000 n
0000015892 00000 n
0000005735 00000 n
0000006000 00000 n
0000014618 00000 n
0000015070 00000 n
0000014597 00000 n
0000016033 00000 n
0000016293 00000 n
0000024494 00000 n
0000024924 00000 n
trailer
<<
/Size 33
/Info 1 0 R
/Root 13 0 R
>>
startxref
25952
%%EOF
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。