Что, если я хочу реализовать сложный запрос в REST

Я хотел бы реализовать сервис REST, который может проанализировать запрос, такой как получение пользователей, созданных после startdate и прежде endate и с полномочием администратора. Кажется, что стандартная реализация REST могла только запросить идентификатором. Я должен к самоопределенному протоколу сделать этот вид запроса возможным или какой-либо стандарт?

Спасибо!

6
задан xiao 啸 17 January 2010 в 08:20
поделиться

4 ответа

Взгляните на Протокол GDATA компании Google. Он очень RESTful и у них есть очень хороший способ выполнения "сложных" запросов, сохраняя при этом чистый URI.

http://code.google.com/apis/gdata/docs/2.0/reference.html#Queries

Вот пример того, что их чистые URI запросов

http://example.com/jo/-/Fritz/2006

вместо

http://example.com/jo?category=Fritz&category=2006

от Google:

Этот подход идентифицирует ресурс без использования параметров запроса, и производит более чистые URI. Мы выбрали этот подход для категорий, потому что считаем, что запросы к категориям будут наиболее распространенными запросами.

1
ответ дан 17 December 2019 в 07:04
поделиться

В остальном не существует ограничения, что говорит, что вы можете запросить только по ID. Нет абсолютно ничего плохого в использовании набора параметров запроса для возврата набора пользователей, соответствующих этим критериям поиска.

3
ответ дан 17 December 2019 в 07:04
поделиться

Райан Бейтс имеет железнодорожный пост, где он показывает создание поиска в качестве ресурса. Концепция все еще действительна, даже если вы не делаете рельсы.

http://railscasts.com/episodes/111-Advanced-search-form

0
ответ дан 17 December 2019 в 07:04
поделиться

, насколько я понимаю, - RESTFLAY FUCE действительна для действий CRUD. Вы можете реализовать отдельные поиск метода / URL и передайте его как можно больше параметров, сколько вам нужно. И если вы все еще пытаетесь придерживаться методологии отдыха - вы должны использовать тип запроса.

0
ответ дан 17 December 2019 в 07:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: