Загрузка файла с использованием общего веб-работника с навигацией по страницам

Я хочу выполнить фоновую загрузку файлов, которая не влияет на основное использование страницы после начала загрузки файлов.

В дополнение к этому мы хотим иметь возможность перемещаться от страницы, выполняющей загрузку, к другим страницам приложения, не прерывая загрузку.

Я реализовал это, используя Web worker/SharedWorker для отправки файлового объекта на сервер, используя XMLHTTPRequest пост-запрос в фоновом режиме. Работает нормально, пока начата загрузка и нет перехода на другую страницу. но при переходе к page2.html после начала загрузки с page1.html request.getPart() возвращает значение null на стороне сервера и загрузка завершается неудачно.

Останавливается ли задача, отправленная с использованием sharedWorker, при переходе на другую страницу в том же домене?

Почему request.getPart() возвращает null при переходе на другую страницу, поскольку sharedWorker все еще должен работать при переходе на другую страницу в том же домене?

Структура моего приложения:

  1. main.html - имеет многочастную форму и создает общедоступный поток для загрузки формы
  2. worker.js - отправляет файловый объект на сервер с помощью почтового запроса XMLHTTPRequest.
  3. сервер - HTTP-сервлет обрабатывает почтовый запрос и сохраняет файл

Как мы можем достичь следующих функциональных возможностей:

  • начать загрузку с главной страницы, используя фон SharedWorker/WebWorker
  • перейти на другую страницу2 в том же домене
  • вернуться на главную страницу и получить статус загрузки из SharedWorker/WebWorker

Любые ссылки / предложения будут весьма заметны.

Спасибо Manpreet

0 ответов

Другие вопросы по тегам