Мы понимаем, что если мы хотим создать многоэлементный запрос, который содержит видеофайл 15 ГБ, невозможно выделить в памяти размер, необходимый для такого большого объема данных, большинство устройств имеют только 2 или 3 ГБ ОЗУ.
Поэтому абсолютно необходимо переключиться на метод uploadTask, который доставит на сервер содержимое файла блока максимального размера, разрешенного IP-пакетами, отправляемыми на сервер.
Этоэто метод POST.Однако он не содержит таких параметров, как идентификатор папки или имя файла.Таким образом, вам нужен способ передачи этих параметров.Лучший способ - это кодировать их в URL.
Я предложил формат кодирования в виде пути позади конечной точки API, но мы также можем очень хорошо кодировать эти два параметра классическим способом.URL, например:
/api/upload?id=123&filename=video.mp4
Из того, что я прочитал в Stackoverflow, с Symfony тривиально получить идентификатор и имя файла.Затем все данные, полученные в теле запроса POST, могут быть записаны в необработанном виде непосредственно в файл, без прохождения через буфер в памяти на стороне сервера.
Пользовательские данные обязательно должны быть потоковыми,будь то мобильная сторона или сторона сервера, а также загружать или скачивать.Загрузка пользовательского контента в память также очень опасна с точки зрения безопасности.
В Symfony, как я могу это сделать?