REST API для сложных запросов - PullRequest
       6

REST API для сложных запросов

0 голосов
/ 20 сентября 2018

Как реализовать подсчет, группирование и другие часто используемые конструкции SQL с помощью вызовов GET REST API и при этом придерживаться хороших стандартов?Я не видел никакой документации, которая описывает, как это сделать.Есть ли какие-либо стандарты уже на месте?Любая помощь будет оценена.Благодарю.

1 Ответ

0 голосов
/ 20 сентября 2018

Из другого ответа, я думаю, вы ищете это:

POST /books/search

    {
        "keywords": "...",
        "yearRange": {"from": 1945, "to": 2003},
        "genre": "..."
    }

Нет ничего плохого в этой конечной точке.Он принимает данные (сущность) в виде тела запроса.Эти данные являются критериями поиска - DTO, как и любой другой.Эта конечная точка создает ресурс (сущность) в ответ на запрос: Результаты поиска.Ресурс результатов поиска является временным ресурсом, который незамедлительно предоставляется клиенту, без перенаправления и не предоставляется другим каноническим URL.

Это все еще REST, за исключением того, что объекты не являются книгами - объект запросаявляется критерием поиска книг, а объект ответа - результаты поиска книг.

Посмотрите на этот ответ для более подробной информации: https://stackoverflow.com/a/31984477/37083

Используя эту структуру, вы можете легко расширить поиск с помощьюдругие сложные предметы

POST /books/search

    {
        "keywords": "...",
        "yearRange": {"from": 1945, "to": 2003},
        "genre": "...",
        "groupby": "year",
        "countby": "keywords"
    }
...