REST: Скажите клиенту отправлять только CSV и текстовый формат - PullRequest
0 голосов
/ 07 января 2019

В restfull WS, как сказать клиенту отправлять только csv и текстовый файл формата.

В заголовке content-type клиент устанавливает формат, в котором он отправляет запрос, а в заголовке Accept клиент устанавливает формат, в котором он хочет принять ответ.

Но как сказать клиенту отправлять только content-type csv или файл? Это из какой-то документации?

Ответы [ 3 ]

0 голосов
/ 07 января 2019

Изображение у вас есть конечная точка с именем /textfiles - разработчик, использующий ваш API, обычно читает вашу документацию о том, как реализовать эту конечную точку. Если вы не используете магию автоматического обнаружения (что, я думаю, до сих пор не распространено).

Если мы возьмем, например, Facebook, в своей документации они просто сообщат, какие файлы вы можете отправить:

Мы принимаем следующие файлы: 3g2, 3gp, 3gpp, [...]

Ваш вопрос:

Но как сказать клиенту отправлять только csv или файл типа содержимого?

тоже немного неясно. Когда пользователь отправил запрос, он уже приложил файлы, которые, как он думал, он может отправить. Поэтому здесь вы бы предпочли отправить сообщение об ошибке, какие файлы разрешены. Так мы говорим о каких-то «предварительных» запросах здесь?

С точки зрения бэкэнд-разработчиков, я могу просто сказать вам: это в документации. Правильно обрабатывайте ошибки, документ и ваш разработчик не будут ненавидеть вас:)

0 голосов
/ 07 января 2019

если я разрабатываю успокаивающее приложение с использованием Spring, я бы установил для атрибута yield, чтобы он возвращал csv или простой текст (https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/bind/annotation/RequestMapping.html). Если клиент попытается запросить ресурс, отличный от csv или text, он получит ошибку. вероятно 415

0 голосов
/ 07 января 2019

Код состояния 415 подходит для этой ситуации:

6.5.13. 415 неподдерживаемый тип носителя

Код состояния 415 (неподдерживаемый тип носителя) указывает, что Исходный сервер отказывается обслуживать запрос, потому что полезная нагрузка в формате, не поддерживаемом этим методом на целевом ресурсе. Проблема с форматированием может быть связана с указанием запроса Content-Type или Content-Encoding, или в результате проверки данные напрямую.

Ответная полезная нагрузка может содержать список типов мультимедиа, поддерживаемых сервером.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...