DXP-0002: HTTP File Upload
DXP-0002 добавляет функциональность загрузки файлов в DMconnect при помощи стандарта HTTP.
Описание:
Когда пользователь выбирает файл для отправки, клиент особым образом обращается к серверу и загружает туда этот файл.
Сервер принимает файл, сохраняет его у себя и возвращает клиенту уникальную ссылку на этот файл, после этого клиент просто отправляет эту ссылку как обычное сообщение.
При этом скачать файл можно будет даже при помощи браузера, однако файл ограничен сроком хранения в сутки (срок может варьироваться в зависимости от сервера).
Доступные команды:
Работа по HTTP:
DXP-0002 реализует небольшой HTTP-сервер, предназначенный для загрузки и выгрузки файлов.
Чтобы загрузить файл, клиенту нужно обратиться по этому адресу:
http://<ХОСТ>:<ПОРТ>/upload
C методом POST и типом данных multipart/form-data.
После получения запроса сервер:
- Проверяет размер файла и тип запроса.
- Сохраняет файл во внутреннюю папку
uploads/ с уникальным идентификатором.
- Создаёт временную ссылку для скачивания.
- Возвращает клиенту JSON-ответ с информацией о файле и ссылкой, например:
{
"status": "ok",
"id": "<ID>",
"filename": "<ИМЯ ФАЙЛА>",
"size": <РАЗМЕР ЗАГРУЖЕННОГО ФАЙЛА В БАЙТАХ>,
"url": "http://<ХОСТ>:<ПОРТ>/file/<ID>/<ИМЯ ФАЙЛА>"
}
Клиент, получив ссылку, просто отправляет её в виде обычного текстового сообщения, чтобы другие пользователи могли скачать файл.
Любой пользователь (или браузер) может перейти по ссылке вида:
http://<ХОСТ>:<ПОРТ>/file/<ID>/<ИМЯ ФАЙЛА>
И скачать файл напрямую.
Передача осуществляется стандартным методом GET — сервер отвечает заголовками Content-Type и Content-Disposition, чтобы браузер корректно загрузил файл.
Файлы хранятся ограниченное время (по умолчанию — 24 часа).
<< Назад к списку расширений
|
© 2025 BitByByte.
|