Точка входа и конечная точка API REST - PullRequest
0 голосов
/ 08 ноября 2018

Что такое точка входа API REST и чем она отличается от конечной точки?

Я искал различные определения в Интернете, но все еще не могу их обернуть (я новичок в API в целом). Насколько я понимаю, они предоставляют средства связи с сервером, но каковы они точно и как точки входа и конечные точки похожи или различаются?

Ответы [ 2 ]

0 голосов
/ 14 июня 2019

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

Конечная точка API

Мне нравится ответ здесь: https://smartbear.com/learn/performance-monitoring/api-endpoints/

"Проще говоря, конечная точка - это один конец канала связи. Когда API взаимодействует с другой системой, точки взаимодействия этого взаимодействия считаются конечными точками. Для API конечная точка может включать URL-адрес сервера или сервис. Каждая конечная точка - это место, откуда API могут получить доступ к ресурсам, необходимым для выполнения их функций. "

И примеры здесь: Что такое конечная точка?

  https://example.com/api/login
  https://example.com/api/accounts
  https://example.com/api/cart/items

Точка входа API

Смотрите здесь: https://restful -api-design.readthedocs.io / en / latest / urls.html

"RESTful API должен иметь одну и ровно одну точку входа. URL-адрес точки входа должен быть сообщен клиентам API, чтобы они могли найти API. Технически говоря, точку входа можно рассматривать как одноэлементный ресурс, который существует вне любой коллекции. "

Итак, следуя предыдущему примеру, это будет:

  https://example.com/api

Дополнительное примечание : в мире GraphQL есть single endpoint для API, без точки входа (https://graphql.org/learn/best-practices/#http). Обычно в форме

  https://example.com/graphql
0 голосов
/ 08 ноября 2018

Проще говоря, точка входа может быть чем-то вроде http://api.your-company.com, в который клиент войдет без какого-либо априорного знания. API научит клиента всему, что ему нужно знать, чтобы сделать осознанный выбор того, что он может делать дальше.

Относительно конечных точек Википедия , то есть заявить следующее:

Конечная точка, точка входа в службу, процесс или очередь или пункт назначения в сервис-ориентированной архитектуре

В широком смысле, конечная точка - это просто целевой хост, который должен обработать ваш запрос (или делегировать его некоторым другим машинам в случае балансировки нагрузки, а что нет). В более узком смысле конечная точка - это просто вызываемый серверный материал, который обрабатывает ваш запрос, то есть URI, такой как http://api.your-company.com/users/12345, будет запрашивать представление пользователя (при условии запроса GET). Конкретной пользователем является обрабатываемый ресурс, в то время как конечная точка может фактически быть сервисом на основе Spring (или фреймворка по вашему выбору), обрабатывающим все запросы, нацеленные на все, что связано http://api.your-company.com/users/*.

...