upload_progress_template
Директива `upload_progress_template` задаёт шаблон для отчёта о прогрессе загрузки в NGINX.
Описание
Директива upload_progress_template является частью модуля отслеживания прогресса загрузки NGINX, который позволяет пользователям контролировать прогресс загрузки файлов, обрабатываемых сервером. Эта директива задаёт шаблон для ответа, который возвращается клиенту при запросе статуса загрузки. Она принимает два аргумента: строку шаблона и спецификацию переменных, которые должны быть включены в отчёт. Шаблон можно настроить для вывода данных в разных форматах, таких как JSON, обычный текст или любой другой строковый формат, требуемый клиентом.
Эта директива должна использоваться совместно с директивой track_uploads, которая включает функциональность отслеживания загрузок в указанном location. Когда клиент отправляет POST-запрос на сервер, NGINX отслеживает прогресс загрузки и обновляет соответствующий шаблон данными в реальном времени о состоянии загрузки. Переменные, включённые в шаблон, позволяют разработчикам отображать конкретную информацию, например размер уже загруженного файла и статусные сообщения, в зависимости от их потребностей.
Директива upload_progress_template полезна для создания динамических пользовательских интерфейсов, которым необходимо визуально отображать прогресс загрузки в соответствии с современными веб-стандартами. Правильная реализация включает обеспечение того, чтобы заданный шаблон точно отражал данные прогресса, захватываемые модулем отслеживания загрузки, который можно широко настраивать для различных приложений.
Пример конфига
location /upload {
upload_progress zone_name 1m;
track_uploads zone_name 60s;
upload_progress_template "{ "size": "$size", "status": "$status" }" ;
}Убедитесь, что шаблон правильно отформатирован, чтобы избежать ошибок при формировании ответа.
Переменные, используемые в шаблоне, должны соответствовать тем, что доступны в контексте прогресса загрузки.
Неверный синтаксис шаблона может привести к сбою в отчёте о прогрессе.