4 ответов:
Я бы охарактеризовал ресурс как спокойное подмножество конечной точки.
в REST ресурс обычно ссылается на некоторый объект или набор объектов, которые представлены в конечной точке API.
/api/users/johnnyконечная точка сама по себе является просто ссылкой на uri, который принимает веб-запросы, которые могут быть или не быть RESTful.
/services/service.asmxследующая ссылка от W3 metadata docs не относится к ресурсам в общем смысле, но все же дает смысл как эти два термина относятся:
3.3 терминология
конечная точка службы: веб-служба, адресуемая с помощью WS-адресация ссылки на конечную точку. В контексте этого спецификация, предполагается, что основной целью потребителя является взаимодействовать с этим сервисом.
ресурс метаданных: специализированная веб-служба, адресуемая с помощью либо ссылка на конечную точку WS-Addressing, либо URL-адрес и чей основной цель предоставление XML-представления части метаданных связанный с конечной точкой службы.
хотя технически один веб-сервис может быть как ' сервис Конечная точка", а также "Ресурс метаданных", для целей уточнение различных ожиданий этих двух типов веб-служб, эта спецификация обсудит эти две концепции (или роли) как различные сущности.
другие ссылки-
что такое web-сервис конечная точка?
http://en.m.wikipedia.org/wiki/Web_resource http://en.m.wikipedia.org/wiki/Web_service
относится к ресурсам как конечные точки:
http://developers.lyst.com/2015/02/20/1-to-1-relationships-and-subresources-in-rest-apis/
условия ресурс и точка часто используются как синонимы. Но на самом деле они не означают одно и то же.
термин точка посвящена URL что используется, чтобы сделать запрос.
Термин ресурс посвящена набор данных это возвращается запросом.и тот же ресурс часто можно получить доступ с нескольких разные конечные точки.
Кроме того,та же конечная точка может возвратить разные ресурсы в зависимости от строки запроса.давайте посмотрим несколько примеров:
разные конечные точки доступа к одному и тому же ресурсу
посмотрите на следующие примеры разные конечные точки:
/api/companies/5/employees/3 /api/v2/companies/5/employees/3 /api/employees/3они, очевидно, все могли получить доступ к самому тот же ресурс в данной ПРИКЛАДНОЙ ПРОГРАММНЫЙ ИНТЕРФЕЙС.
также существующий API может быть полностью изменен. Это может привести к новым конечным точкам, которые будут обращаться к тем же старым ресурсам, используя совершенно новые и разные URL:
/api/employees/3 /new_api/staff/3одна конечная точка доступа к различным ресурсам
если ваша конечная точка возвращает коллекцию, вы можете осуществлять поиск/фильтрацию/сортировку с помощью строки запроса. В результате следующие URL-адреса все используют та же конечная точка (
/api/companies), но они могут вернуться разные ресурсы (или наборы ресурсов, которые по определению являются ресурсы сами по себе):/api/companies /api/companies?sort=name_asc /api/companies?location=germany /api/companies?search=siemens
согласно https://apiblueprint.org/documentation/examples/13-named-endpoints.html это ресурс "общее" место хранения данного объекта-например /customers / 30654 / orders, тогда как точка - это конкретное действие (метод HTTP) над данным ресурсом. Так что один ресурс может иметь несколько конечных точек.
возможно, мой не отличный ответ, но здесь идет.
поскольку я больше работаю с действительно RESTful web services через HTTP, я попытался отвлечь людей от использования термина endpoint, поскольку у него нет четкого определения, и вместо этого использовать язык REST, который является ресурсами и местоположениями ресурсов.
на мой взгляд, endpoint-это термин TCP. Это связывается с HTTP, потому что часть URL-адреса идентифицирует сервер.
Так что ресурс-это не новый термин, я не думайте, я думаю, что конечная точка всегда была незаконно присвоена, и мы понимаем это, поскольку мы получаем наши головы вокруг отдыха как стиль из API.
Comments