YMATE-MODULE-FILEUPOADER — это модуль, основанный на YMP-фреймворке, который предоставляет услуги по загрузке файлов и доступу к ресурсам.
<dependency>
<groupId>net.ymate.module</groupId>
<artifactId>ymate-module-fileuploader</artifactId>
<version>2.0.0</version>
</dependency>
#-------------------------------------
# module.fileuploader 模块初始化参数
#-------------------------------------
# Идентификатор узла, значение по умолчанию: unknown
ymp.configs.module.fileuploader.node_id=
# Префикс имени кэша, значение по умолчанию: ""
ymp.configs.module.fileuploader.cache_name_prefix=
# Время ожидания данных в кэше, значение должно быть больше или равно 0, иначе будет использоваться значение по умолчанию
ymp.configs.module.fileuploader.cache_timeout=
# Базовый префикс запроса службы контроллера (не допускается начало и окончание с '/'), значение по умолчанию: ""
ymp.configs.module.fileuploader.service_prefix=
# Регистрация службы контроллера по умолчанию, значение по умолчанию: true
ymp.configs.module.fileuploader.service_enabled=
# Включить режим прокси, значение по умолчанию: false
ymp.configs.module.fileuploader.proxy_mode=
# Базовый URL-адрес службы прокси (должен начинаться с http:// или https:// и заканчиваться на '/', например: http://www.ymate.net/fileupload/, значение по умолчанию пусто)
ymp.configs.module.fileuploader.proxy_service_base_url=
# Ключ подписи параметров запроса между клиентом прокси и сервером, значение по умолчанию пустое
ymp.configs.module.fileuploader.proxy_service_auth_key=
# Корневой путь хранения загруженных файлов (в зависимости от реализации адаптера хранилища, значение по умолчанию: ${root}/upload_files)
ymp.configs.module.fileuploader.file_storage_path=
# Корневой путь для хранения миниатюр (значение по умолчанию совпадает со значением пути хранения файлов)
ymp.configs.module.fileuploader.thumb_storage_path=
# Базовый URL-адрес статических ресурсов (должен начинаться с http:// или https:// и заканчиваться на '/', например: http://www.ymate.net/static/resources/, значение по умолчанию пусто, что означает, что базовый URL-адрес не используется)
ymp.configs.module.fileuploader.resources_base_url=
# Реализация интерфейса адаптера хранилища файлов, если не предоставлена, используется системная реализация по умолчанию. Этот класс должен реализовывать интерфейс net.ymate.module.fileuploader.IFileStorageAdapter
ymp.configs.module.fileuploader.file_storage_adapter_class=
# Реализация обработчика изображений, если не предоставляется, используется система по умолчанию. Класс должен реализовать интерфейс net.ymate.module.fileuploader.IImageProcessor
ymp.configs.module.fileuploader.image_processor_class=
# Класс процессора ресурсов, используемый для обработки загруженных ресурсов, проверки доступа к ним и разрешения на доступ (если режим прокси не включён, этот параметр является обязательным). Класс должен реализовывать интерфейс net.ymate.module.fileuploader.IResourcesProcessor
ymp.configs.module.fileuploader.resources_processor_class=
# Автоматическое создание миниатюр после успешной загрузки файла, значение по умолчанию false
ymp.configs.module.fileuploader.thumb_create_on_uploaded=
# Разрешить настройку размера миниатюр, значение по умолчанию false
ymp.configs.module.fileuploader.allow_custom_thumb_size=
# Список размеров миниатюр (этот список действует только тогда, когда разрешено настраивать размер миниатюр), если список не пустой, то настраиваемый размер не может превышать этот диапазон, например: 600_480|1024_0 (0 означает пропорциональное уменьшение масштаба, 0_0 не поддерживается), значение по умолчанию пусто
ymp.configs.module.fileuploader.thumb_size_list=
# Качество миниатюр, например: 0.70f, значение по умолчанию 0f
ymp.configs.module.fileuploader.thumb_quality=
# Допустимые типы содержимого загружаемых файлов, например: image/png|image/jpeg, значение по умолчанию пусто, без ограничений
ymp.configs.module.fileuploader.allow_content_types=
Пример 1: Загрузить файл с помощью запроса POST по адресу URL:
http://localhost:8080/uploads/push
Параметры:
— file: поток данных загружаемого файла; — type: обработчик результатов запроса, если не указан, используется обработчик по умолчанию (можно выбрать fileupload).
Ответ:
{
"ret": 0,
"data": {
"createTime": 1638200758000,
"extension": "mp4",
"filename": "a1175d94f245b9a142955b42ac285dc2.mp4",
"hash": "a1175d94f245b9a142955b42ac285dc2",
"lastModifyTime": 1638200758000,
"mimeType": "video/mp4",
"size": 21672966,
"sourcePath": "video/a1/17/a1175d94f245b9a142955b42ac285dc2.mp4",
"status": 0,
"type": "VIDEO",
"url": "http://localhost:8080/uploads/resources/video/a1175d94f245b9a142955b42ac285dc2"
}
}
{
"files": [
{
"size": 21672966,
"name": "a1175d94f245b9a142955b42ac285dc2.mp4",
"type": "video",
"hash": "a1175d94f245b9a142955b42ac285dc2",
"thumbnailUrl": "http://localhost:8080/uploads/resources/video/a1175d94f245b9a142955b42ac285dc2"
}
]
} **Пример 2:** сопоставление отпечатков файлов, запрос URL-адреса способом POST:
```shell
http://localhost:8080/uploads/match
Параметры:
— hash: отпечаток файла (MD5), обязательный параметр.
Ответ:
Если сопоставление прошло успешно, то возвращается информация об этом файле.
{
"ret": 0,
"matched": true,
"data": {
"createTime": 1638200758000,
"extension": "mp4",
"filename": "a1175d94f245b9a142955b42ac285dc2.mp4",
"hash": "a1175d94f245b9a142955b42ac285dc2",
"lastModifyTime": 1638200758000,
"mimeType": "video/mp4",
"size": 21672966,
"sourcePath": "video/a1/17/a1175d94f245b9a142955b42ac285dc2.mp4",
"status": 0,
"type": "VIDEO",
"url": "http://localhost:8080/uploads/resources/video/a1175d94f245b9a142955b42ac285dc2"
}
}
Пример 3: доступ к ресурсам файлов, запрос URL-адреса способом GET:
http://localhost:8080/uploads/resources/{type}/{hash}
Параметры:
— type: тип файла, обязательный параметр, возможные значения: image
, video
, audio
, text
, application
, thumb
.
— hash: отпечаток файла (MD5), обязательный параметр.
Примечание: если необходимо принудительно загрузить ресурс через браузер, достаточно добавить
?attach
в параметры запроса. Также поддерживается возможность задать собственное имя файла с помощью?attach=<FILE_NAME>
. Имя файла должно быть допустимым и не содержать специальных символов, иначе будет использоваться имя по умолчанию.
YMP предлагает не только удобный опыт быстрой разработки веб-приложений и других Java-проектов, но и постоянно предоставляет богатый опыт реализации проектов.
Заинтересованные друзья могут присоединиться к официальной группе QQ: 480374360. Вместе мы можем общаться, учиться и помогать YMP расти!
Если вам нравится YMP, мы будем благодарны за вашу поддержку и поощрение!
Для получения дополнительной информации о фреймворке YMP посетите официальный сайт: https://ymate.net.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )