Co to jest punkt końcowy?

Czytałem o OAuth i ciągle mówi o punktach końcowych. Czym dokładnie jest punkt końcowy?

Author: poke, 2010-01-23

10 answers

Wszystkie opublikowane do tej pory odpowiedzi są poprawne, punkt końcowy to po prostu jeden koniec kanału komunikacyjnego. W przypadku OAuth istnieją trzy punkty końcowe, którymi należy się zająć:

  1. Tymczasowy Uri uwierzytelnienia żądania(nazywany adresem URL Tokena żądania w specyfikacji społeczności OAuth 1.0 A). Jest to URI, do którego wysyłasz żądanie, aby uzyskać nieautoryzowany Token żądania od serwera / dostawcy usług.
  2. Resource Owner Authorization URI (zwany użytkownikiem Authorization URL w OAuth 1.0 a community spec). Jest to URI, do którego kierujesz użytkownika, aby autoryzował Token żądania uzyskany z tymczasowego URI żądania poświadczenia.
  3. Token Request URI (nazywany adresem URL Tokena dostępu w specyfikacji społeczności OAuth 1.0 A). Jest to URI, do którego wysyłasz żądanie w celu wymiany autoryzowanego Tokena żądania na Token dostępu, który może być następnie użyty do uzyskania dostępu do chronionego zasobu.

Mam nadzieję, że to pomoże wyjaśnić sprawy. Mieć zabawna nauka o OAuth! Napisz więcej pytań, jeśli napotkasz trudności z wdrożeniem klienta OAuth.

 79
Author: Paul Osman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-01-23 19:39:19

NO dalej chłopaki:) moglibyśmy zrobić to prościej, na przykładach:

/this-is-an-endpoint
/another/endpoint
/some/other/endpoint
/login
/accounts
/cart/items

A po umieszczeniu pod domeną wyglądałoby to tak:

https://example.com/this-is-an-endpoint
https://example.com/another/endpoint
https://example.com/some/other/endpoint
https://example.com/login
https://example.com/accounts
https://example.com/cart/items

Może być http lub https, w przykładzie używamy https.

Również endpoint może być różny dla różnych metod HTTP, na przykład:

GET /item/{id}
PUT /item/{id}

Będą dwa różne punkty końcowe - jeden dla R etrieving (jak w "C R ud" Skrót), a drugi dla U pdating (jak w "cr U d")

Oraz to wszystko, naprawdę takie proste!

 375
Author: Tomeg,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-30 12:52:25

Jest to jeden koniec kanału komunikacyjnego, więc często jest on reprezentowany jako adres URL serwera lub usługi.

 44
Author: David M,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-01-23 08:28:38

Punkt końcowy jest wzorcem URL używanym do komunikacji z API.

 36
Author: SirLemuel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-07-03 16:04:00

Endpoint, w żargonie uwierzytelniania OpenID, jest adresem URL, na który wysyłane jest (POST) żądanie uwierzytelnienia.

Fragmenty Google authentication API

Aby uzyskać punkt końcowy Google OpenID, wykonaj wyszukiwanie, wysyłając żądanie GET lub HEAD HTTP do https://www.google.com/accounts/o8/id . podczas korzystania z GET, zalecamy ustawienie nagłówka Accept na "application / xrds+xml". Google zwraca dokument xrds zawierający OpenID adres URL punktu końcowego dostawcy.Adres punktu końcowego jest adnotowany jako:
<Service priority="0">
<Type>http://specs.openid.net/auth/2.0/server</Type> 
<URI>{Google's login endpoint URI}</URI> 
</Service>

Po uzyskaniu punktu końcowego Google możesz wysyłać do niego żądania uwierzytelniania, określając odpowiednie parametry (dostępne na połączonej stronie). Łączysz się z punktem końcowym, wysyłając żądanie na adres URL lub wysyłając żądanie HTTP POST.

 12
Author: Amarghosh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-04-02 02:00:04

Punkt końcowy to "punkt połączenia" usługi, narzędzia lub aplikacji, do których dostęp uzyskuje się przez sieć. W świecie oprogramowania każda aplikacja, która jest uruchomiona i "nasłuchuje" połączeń, używa punktu końcowego jako "drzwi wejściowych"."Gdy chcesz połączyć się z aplikacją / usługą / narzędziem do wymiany danych, łączysz się z jego punktem końcowym

 9
Author: Justin Franks,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-09-27 15:15:34

Termin punkt końcowy był początkowo używany dla usług WCF. Później, mimo że słowo to jest używane jako synonim zasobów API, REST zaleca nazywanie tych URI (URI[S], które rozumieją czasowniki HTTP i podążają za architekturą REST) jako"zasobów".

W skrócie, Zasób lub punkt końcowy jest rodzajem punktu wejścia do zdalnie hostowanej aplikacji, która pozwala użytkownikom komunikować się z nią za pośrednictwem protokołu HTTP.

 4
Author: IKriKan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-27 11:04:17

Punktem końcowym terminu jest adres URL, który koncentruje się na tworzeniu żądania. Spójrz na następujące przykłady z różnych punktów:

/api/groups/6/workings/1
/api/v2/groups/5/workings/2
/api/workings/3

Mogą wyraźnie uzyskać dostęp do tego samego źródła w danym API.

 2
Author: ismael,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-02-06 07:25:07

Krótka odpowiedź: "punkt końcowy jest abstrakcją, która modeluje koniec kanału komunikacyjnego, przez który system może wysyłać lub odbierać wiadomości "(Ibsen, 2010).


Endpoint vs URI (disambiguation)

Punkt końcowy nie jest taki sam jak URI. Jednym z powodów jest to, że URI może prowadzić do różnych punktów końcowych, takich jak punkt końcowy, aby uzyskać, inny, aby opublikować i tak dalej. Przykład:

@GET /api/agents/{agent_id} //Returns data from the agent identified by *agent_id*
@PUT /api/agents/{agent_id} //Update data of the agent identified by *agent_id*

Endpoint vs resource (disambiguation)

Punktem końcowym jest to nie to samo co zasób. Jednym z powodów jest to, że różne punkty końcowe mogą prowadzić do tego samego zasobu. Przykład:

@GET /api/agents/{agent_id} @Produces("application/xml") //Returns data in XML format
@GET /api/agents/{agent_id} @Produces("application/json") //Returns data in JSON format
 1
Author: Cleber Jorge Amaral,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-03-26 00:44:18

API oznacza interfejs programowania aplikacji. Jest to sposób interakcji aplikacji z innymi aplikacjami za pośrednictwem punktu końcowego. I odwrotnie, możesz zbudować API dla swojej aplikacji, które jest dostępne dla innych programistów do wykorzystania / połączyć się za pomocą metod HTTP, które są RESTful. Reprezentacyjny Transfer Państwa (reszta):

  • GET: pobiera dane z punktu końcowego API.
  • PUT: Update data via API-podobne do POST, ale więcej o aktualizacji informacji.
  • POST: Wysyłanie danych do API.
  • DELETE: usuwa dane z podanego API.
 0
Author: NicholasKyleHoffman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-12-08 21:27:50