Невозможно загрузить большой файл (80 Мбайт) с помощью response-native-fetch-blob - PullRequest
0 голосов
/ 11 декабря 2018
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 мегабайт) приведенный выше фрагмент кода запускает загрузку, но показывает Без названия , и никакого прогресса не происходит, а затем отображает Неудачный .Загрузка начинается снова автоматически, и цикл продолжается.Но тот же код легко загружает небольшие zip-файлы.

1 Ответ

0 голосов
/ 13 декабря 2018

Затем необходимо установить тайм-аут соединения.

Когда вы делаете запрос к серверу: серверу требуется XXX секунд, прежде чем он ответит, что он даже получил запрос (пока он создает zip ...),Если это не настроено, клиент предположит, что сервер так и не получил ответ, и отключится сам.

попробуйте добавить:

"timeout": 60000

в запрос на выборку.

...