我正在开发一个React Native项目。我现在想要做的是将下载的文件下载并保存到设备中。我正在使用此软件包https://www.npmjs.com/package/rn-fetch-blob下载文件。
这是我的代码
RNFetchBlob.config({
fileCache: true,
})
.fetch('GET', 'https://static.standard.co.uk/s3fs-public/thumbnails/image/2016/05/22/11/davidbeckham.jpg?w968', {
})
.then((res) => {
Alert.alert(res.path());
})
下载后,res.path会返回这样的路径。
我正在尝试将其转换为要使用Image组件显示的URI。我尝试将以下状态对象绑定到Image组件。
{
uri: res.path()
}
它没有用。这就是为什么下一次尝试将路径转换为URI并显示uri的原因。我该怎么办?
答案 0 :(得分:0)
尝试提供文件的下载路径,
const directoryFile = RNFS.ExternalStorageDirectoryPath + "/FolderName/";
RNFS.mkdir(directoryFile);
const urlDownload = input.url;
let fileName;
fileName = "filename.zip";
let dirs = directoryFile + fileName;
RNFetchBlob.config({
// response data will be saved to this path if it has access right.
path: dirs
}).fetch("GET", urlDownload, {
//some headers ..
})
.then(res => {
console.log("The file saved to ", res.path());
//RNFS.moveFile(dirs, directoryFile + fileName); // -> uncomment this line if it still does not store at your desired path
alert("File Downloaded At Folder");
})
.catch(err => {
console.log("Error: " + err);
});