lanit-tercom-school/analyzeme

Автоматически формировать FileInfo.ReferenceName

Opened this issue · 6 comments

При загрузке нового файла необходимо автоматически формировать ReferenceName по следующим правилам:

  1. Если файл содержит расширение, то ReferenceName - имя файла без расширения
  2. Пробельные символы в имени файла должны заменяться символом "_"
  3. Допускается использование только латинских симолов, цифр, подчеркивания, точки.

Пример:

0_10.json   -> 0_10
my data.xls -> my_data
spb.gov.txt -> spb.gov

В случае автоматического формирования некорректного имени (которое не удовлетворяет условиям 1-3), необходимо выдавать alert с сообщением:

Файл с таким уникальным именем уже существует в проекте. Укажите новое имя:

Сформированный здесь reference name будет отправляться серверу в #192, или сервер будет не только проверять его, а повторять с нуля тот же алгоритм преобразования?
Если будет отправляться, для #192 нужно описать, как это будет представлено в запросе.

Клиент будет отправлять имя серверу, сервер только проверяет. Сам ничего не формирует.

Скажите тогда, когда подумаете/посмотрите, в каком виде он это отправлять будет. Под каким конкретно хидером или ещё как-то - как это принимать, чтобы проверить и использовать.
Сейчас запрос такой:
POST /upload/{user_id}/{project_id}, под хидером "file" : multipart/form-data - файл для загрузки

Варианта 2:

  1. Передавать внтури POST запроса доп. данные вместе с файлом (если это конечно возможно сделать, я еще не проверял)
  2. Загружать файл по урлу - /upload/{user_id}/{project_id}/{file_reference_name} - наверное это лучший вариант с точки зрения сервиса

Оба можно, да. Просто черкните тогда, когда решите, чтобы знать, на который из них на сервере ориентироваться

Давайте второй тогда.