Получение файла с сервера заданий на мой Fressend Server

StackOverflow https://stackoverflow.com/questions/4415210

  •  08-10-2019
  •  | 
  •  

Вопрос

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

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

Мне также нужна какая-то библиотека jQuery, чтобы показать скорость загрузки, строку прогресса какой-то сортировки.

Это было полезно?

Решение

Я думаю, что это поможет узнать ответы на несколько вопросов.

С верхней части моей головы:

  • Насколько большими могут быть файлы?
  • Как долго он может принять, чтобы загрузить файл?
  • Какой формат файлы?
  • Будучи файлами, которые вы выбираете с Server Server Static? (или ли они регенерируются каждый раз?)

Редактировать:

jquery ui имеет индикатор. (Документы)

С вашей панели пользователя у вас будет такая ссылка:

<a href="remoteTxtFile.php?file_id=100">File 100</a>

Эта ссылка должна начать jquery.getjson () Запрос на RemotetXtFile.php на вашем сервере Frontend, который:

  • Проверяет, если запрошенный файл уже загружен.
  • Если он имеет, верните объект JSON, как это: {«Местоположение»: '/cache/file_100.txt'}
    • Обратный вызов успеха AJAX может показать ссылку на файл.
  • Если нет, начните загрузку файла, используя что-то (идеи дальше вниз), которые могут выводить прогресс в текстовый файл. Сохраните файл в папку «Cache». Верните объект JSON, как это: {'Progress': 0}
  • Периодически (каждую секунду или около того) Пожаруйте еще один GetJSON () к сценарию PHP, который считывает файл TXT Doad Proggter и возвращает объект JSON, как это: {'Progress': 52} (процентов)
  • Когда загрузка завершена, из PHP Return JSON, как это: {'Местоположение': '/cache/file_100.txt'}
    • Когда Ajax Callback Callback видит «местоположение», файл сделан, так что показать ссылку на него.

Я не уверен, что вы должны использовать для фактической загрузки файлов. Проблема с использованием PHP и stream_notification_callback. Чтобы сделать загрузку (и выходной прогресс) заключается в том, что весь файл будет загружен в память, что не хорошо для файла 1 ГБ.

Возможно, используя WGET, чтобы сделать фактическую загрузку, будет работать лучше.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top