1
RNFetchBlob
    .config({
          addAndroidDownloads: {
               useDownloadManager: true,
               //changes here
               path: RNFetchBlob.fs.dirs.SDCardApplicationDir + '/build_change_philippines.zip',
                description: 'Images Zip',
                mediaScannable: true
           }
     })
     .fetch('GET', 'http://bccms.naxa.com.np/core/project-material-photos/1')
     .then((resp) => {
          const sourcePath = resp.path();
          const targetPath = resp.path().replace('.zip', '');
          unzip(sourcePath, targetPath)
              .then((path) => {
                  console.log(`unzip completed at ${path}`);
              })
              .catch((error) => {
                  console.log(error);
              });
      });

对于大文件大小(超过 80 兆字节),上面的代码片段开始下载,但显示Untitled并且没有进展,然后显示Unsuccessful。下载会自动重新开始,循环继续进行。但是相同的代码可以轻松下载小 zip 文件。

4

1 回答 1

1

然后您需要设置连接超时。

当您向服务器发出请求时:服务器在响应它甚至收到请求之前需要 XXX 秒(当它创建 zip 时......)。如果未配置,客户端将假定服务器从未收到响应并自行关闭。

尝试添加:

"timeout": 60000

到获取请求。

于 2018-12-13T17:28:36.277 回答