Удалить файл только после загрузки window.location - PullRequest
0 голосов
/ 09 февраля 2019

У меня есть маршрут на сервере узлов, который генерирует файл Excel и загружается.

Это часть маршрута, которая создает файл xlsx и отвечает.

  workbook.toFileAsync("./public/" + empresa2 + ".xlsx").then(() => {
    res.download( __dirname + "/public/" + empresa2 + ".xlsx")
  })
  .catch(error => {
    res.send({error: 'Error'})
  })

Я называю этот маршрут с помощью вызова ajax GET, и в случае успеха я извлекаю файл с помощью метода window.location.

Это работает для меня.Теперь я хочу удалить файл после его загрузки.Пока я понимаю, что это должно быть сделано на стороне сервера.

У меня есть маршрут, который отвязывает файл

fs.unlink( __dirname + "/public/" + empresa2 + ".xlsx",function(error){
        console.log(error);
    });

Это работает хорошо, моя проблема в том, когда и где это вызватьмаршрут, чтобы он не удалял файл перед его загрузкой.

при вызове при успешном получении ajax файл удаляется быстрее, чем при загрузке.до сих пор я пробовал диалог подтверждения и время ожидания.

Спасибо за помощь.

...