在react-native中下载ZIP文件

时间:2016-04-12 10:09:52

标签: ios react-native

我正在使用react-native编写应用程序,我将为Android和iOS构建它。 无论如何,我一直在尝试使用react-native下载ZIP文件,但我无法让它工作。下载文件后,我的计划是解压缩然后使用AsyncStorage存储它。 但我不断收到以下错误:

[RCTNetworking.m:330] Received data was not a string, or was not a recognised encoding. 我已经为我的请求尝试了各种设置,但我想我只是遗漏了一些东西,代码目前看起来像: fetch('somewhere.path/file.zip', { method: 'GET', headers: { 'Accept-Encoding': 'application/zip' }, }) .then((response) => { console.log("Success"); }) .catch((error) => { console.log("Error"); }).done(); 打印Success但响应数据不包含zip文件数据 如果它有助于我使用XCode和模拟器进行调试 如果有人有任何想法请帮助我! :)

提前致谢, Yon的

1 个答案:

答案 0 :(得分:3)

我还写了一个应用程序来下载一些zip文件并解压缩。对于下载功能,我使用了一个名为react-native-fetch-blob的插件。代码示例:

import RNFetchBlob from 'react-native-fetch-blob';
...
RNFetchBlob.config({
fileCache : true,
path: path + '/file.zip'})
.fetch('GET','http://domain/file.zip')
.progress((received, total) => {console.log('progress', received / total)})
.then((res) => {// the temp file path
console.log('The file saved to ', res.path());
});

...

谢谢,