我正在使用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的
答案 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());
});
...
谢谢,