Асинхронная загрузка файлов?

Пользователь имеет возможность заполнить форму и прикрепить несколько фотографий весомых по размеру.

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

Как такие штуки делаются в Node.js?
  • Вопрос задан
  • 343 просмотра
Пригласить эксперта
Ответы на вопрос 2
dmitry0141e
@dmitry0141e
Software Engineer
Это больше от интерфейса зависит, если пользователь на странице, только чтобы загрузить файлы, то имеет смысл держать, до конца загрузки модалку с прогрессом или подобное.
Если он точно не покинет сайт (чат, админка и т. д. ), то можно в фон и прогресс вывести в видное место.

Пример трекинга прогресса на фронте (axios)
const upload = async (files) => {
  const config = {
    onUploadProgress: (progressEvent) => {
      const percentUploaded = Math.round((progressEvent.loaded * 100) / progressEvent.total);
      console.log(percentUploaded);
    }
  }

  const data = new FormData();
  data.append('file', files[0]);

  await axios.put('/api/url', data, config);
}

Если без либ, то вот пример прогресса на XmlHttpRequest

На бэке в ноде на этот роут обычно вешают какой-нибудь multer.
Ответ написан
ThunderCat
@ThunderCat
{PHP, MySql, HTML, JS, CSS} developer
Есть ли смысл держать пользователя, чтобы он дождался загрузки фотографии или же есть смысл сохранить форму а файлы загружать в фоновом режиме?
За что держать то будете? Тут все зависит от критичности данных, если пользователь засубмитит форму и не дождавшись загрузки файлов закроет страничку у вас будет лажа в плане связанности данных - данные формы есть, а картинок нет.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Aline digital agency Санкт-Петербург
от 120 000 до 300 000 ₽
Plesk Новосибирск
от 90 000 до 150 000 ₽
Grabr Москва
от 3 500 $
15 авг. 2020, в 01:45
95000 руб./за проект
14 авг. 2020, в 22:47
15000 руб./за проект
14 авг. 2020, в 22:40
15000 руб./за проект