Каковы лучшие практики для корневой страницы API REST? - PullRequest
13 голосов
/ 24 мая 2010

Хотелось бы узнать, есть ли лучшие рекомендации по поводу корневой конечной точки для веб-службы REST? Я имею в виду, должна ли быть краткая документация об использовании самого API? Должен ли это быть документ XML, описывающий все доступные методы? Должен ли он возвращать только «неизвестный метод»?

Ответы [ 5 ]

6 голосов
/ 27 июня 2016

Вопрос совершенно ясен для меня.

Я думаю, что он должен ответить 404. Если нет ресурса, связанного с корневым путем, то возвращать нечего.

ЕслиВы чувствуете, что 404 бесполезен, тогда было бы также нормально возвратить URL документации.

2 голосов
/ 24 мая 2010

Этот вопрос неясен.Я предполагаю, что это означает что-то вроде каталога, в котором находятся все методы API.Например, корневым каталогом API-интерфейса Flickr будет http://api.flickr.com/services/rest/.

Пример проекта, который обращается к API-интерфейсу Flickr, см. python-flickrapi

1 голос
/ 27 июня 2016

корневой точкой REST API является API, определенный для первой косой черты, т. Е. "/" URL после диспетчера-сервлета. Он содержит все GET для списка ресурсов (в основном, get для всех таблиц базы данных), этот список дополнительно содержит все элементы, и в одном элементе будут DELETE, PUT / PATCH и SELF get URL. Таким образом, делая реализацию HATEOS.

1 голос
/ 29 июня 2010

<ч /> 1. NerdDinner использует службы данных WCF, что является отличным способом для правильной реализации служб RESTful. Причина, по которой я указываю на это, а не на службы данных WCF, заключается в том, что это общедоступный веб-сайт, и вы можете им пользоваться 2. MediaWiki не является хорошим примером, потому что они передают действия в URI, но технически это сервис RESTful и показывает много интересных идей.

0 голосов
/ 06 июня 2018

REST должен быть самоописанным, поэтому, по моему мнению, наличие рута, показывающего ошибку, является плохим дизайном. Мне нравится, чтобы корень содержал информацию, которая позволяет вам перемещаться по остальной части API. Так, например, корень может содержать ссылку на список категорий продуктов, из которых пользователь API может выбрать категорию, а затем список продуктов и т. Д. API с самоописанием означает меньше документации для написания и обновления! !!

...