엔드 포인트 란 무엇입니까?


172

OAuth에 대해 읽었으며 끝점에 대해 계속 이야기하고 있습니다. 정확히 엔드 포인트 란 무엇입니까?


2
나는 이와 같은 오래된 게시물에 계속 걸려 넘어지고 왜 이런 종류의 게시물이 과거에 항상 찬성되었는지 이해하지 못하지만, 이것이 현재 게시물 인 경우 확실히 숨겨져 버릴 것입니다.
tnkh

6
어쩌면 다른 사람들도 궁금해하기 때문에 불쾌감을 줄 수도 있습니다. 그게 아닌가?
노라 맥 두걸 콜린스

답변:


74

지금까지 게시 된 모든 답변은 정확하며 엔드 포인트는 단순히 통신 채널의 한 끝입니다. OAuth의 경우 고려해야 할 세 가지 엔드 포인트가 있습니다.

  1. 임시 자격 증명 요청 URI (OAuth 1.0a 커뮤니티 사양에서 요청 토큰 URL이라고 함) 서버 / 서비스 제공 업체로부터 무단 요청 토큰을 얻기 위해 요청을 보내는 URI입니다.
  2. 자원 소유자 권한 부여 URI (OAuth 1.0a 커뮤니티 스펙에서 사용자 권한 부여 URL이라고 함). 이것은 사용자가 임시 자격 증명 요청 URI에서 얻은 요청 토큰을 승인하도록 지시하는 URI입니다.
  3. 토큰 요청 URI (OAuth 1.0a 커뮤니티 사양에서 액세스 토큰 URL이라고 함). 이것은 승인 된 요청 토큰을 액세스 토큰으로 교환하기 위해 요청을 보내는 URI로, 보호 자원에 대한 액세스를 얻는 데 사용될 수 있습니다.

희망은 일을 정리하는 데 도움이됩니다. OAuth에 대해 즐겁게 배우십시오! OAuth 클라이언트 구현에 어려움이있는 경우 추가 질문을 게시하십시오.


5
왜 이것을 "기본 URI"라고 부르지 않습니까? "엔드 포인트"와 "기본 URI"사이에 근본적인 차이점이 있습니까? 감사.
원천 징수

@Xlsx 구현에 따라 다릅니다. 요청 예는 "/ users? name = admin"또는 "/ users / admin"이 될 수 있습니다. 둘 중 하나 또는 둘 다 또는 둘 다 또는 둘 다 수행 할 수 없습니다.
Burak

2
OP가 특히 OAuth가 아닌 "일반 엔드 포인트"를 요청한 이후에는 유용하지 않습니다. 나는 지금 혼란스러워한다.
새벽

312

어서와 :) 우리는 예를 들어 더 간단하게 할 수 있습니다.

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

도메인에 배치하면 다음과 같습니다.

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

http 또는 https 일 수 있으며, 예제에서 https를 사용합니다.

또한 엔드 포인트는 다음과 같은 HTTP 메소드마다 다를 수 있습니다.

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

다른 두 끝점 것 - 하나의 R ( "C에서와 같이 etrieving R의 UD '약어)을위한 다른 pdating ("CR과 U의 D ")

그리고 그게 전부입니다. 정말 간단합니다!


25
다른 HTTP 메소드는 별도의 엔드 포인트를 정의한다고 언급했습니다.
보얀 쿠 슬레 프

4
마태 복음 20:16
KJV-

2
너무 나쁘다. 스택 교환은이 답변을 첫 번째 또는 두 번째 답변으로 표시하지 않습니다. 나를 위해, 그것은 모든 조치와 컨트롤러 세트가 엔드 포인트로 간주되는지 또는 단일 컨트롤러의 단일 액션이 엔드 포인트를 정의했는지 알지 못했기 때문에 목록을 내려 놓은 것이 가장 좋습니다. 이 대답은 그것이 후자라고 나에게 말했다.
Thorkil Værge

따라서 안타깝게도 OP가이 답변을 선택하지 않은 것이 가장 좋은 답변입니다.

1
@Parth 엔드 포인트는 일반적으로 요청에 의해 호출되는 것으로 API 소비자에 대한 인터페이스로 제공하는 것입니다. 따라서이 예제에서 구현은 두 개의 엔드 포인트를 처리합니다 (API 소비자 / 사용자에게 무언가를 호출하는 두 가지 방법을 제공했기 때문에). 그러나 나는 그것이 일반적으로 "일반적"이라고 썼으며 엔드 포인트를 조금 다르게 호출한다고 주장하는 사람이 있다면 (예를 들어 누군가는 이것이 하나의 엔드 포인트라고 주장 할 것입니다), "좋습니다. 우리가 단순히 서로를 이해하기에 충분히 행복합니다. "
Tomeg

43

통신 채널의 한쪽 끝이므로 종종 서버 또는 서비스의 URL로 표시됩니다.


35

엔드 포인트는 API와 통신하는 데 사용되는 URL 패턴입니다.


12

엔드 포인트OpenID 인증 용어에서 는 인증 요청을 보내는 URL입니다 (POST).

Google 인증 API 에서 발췌

Google OpenID 엔드 포인트를 얻으려면 https://www.google.com/accounts/o8/id 로 GET 또는 HEAD HTTP 요청을 보내 검색을 수행 하십시오 . GET을 사용할 때 Accept 헤더를 "application / xrds + xml"로 설정하는 것이 좋습니다. Google은 OpenID 제공 업체 엔드 포인트 URL이 포함 된 XRDS 문서를 반환합니다. 엔드 포인트 주소는 다음과 같이 주석이 추가됩니다.

<Service priority="0">
<Type>http://specs.openid.net/auth/2.0/server</Type> 
<URI>{Google's login endpoint URI}</URI> 
</Service>

Google 엔드 포인트를 획득하면 적절한 매개 변수 (링크 된 페이지에서 사용 가능)를 지정하여 인증 요청을 보낼 수 있습니다. URL에 요청을 보내거나 HTTP POST 요청을 작성하여 엔드 포인트에 연결합니다.


7

엔드 포인트는 네트워크를 통해 액세스되는 서비스, 도구 또는 응용 프로그램의 '연결 지점'입니다. 소프트웨어 세계에서, 연결을 위해 실행 중이고 "청취"하는 모든 소프트웨어 응용 프로그램은 끝점을 "정문"으로 사용합니다. 데이터를 교환하기 위해 애플리케이션 / 서비스 / 도구에 연결하려는 경우 엔드 포인트에 연결


4

엔드 포인트라는 용어는 처음에 WCF 서비스에 사용되었습니다. 나중에이 단어가 API 자원과 동의어로 사용 되더라도 REST는 이러한 URI (HTTP 동사를 이해하고 REST 아키텍처를 따르는 URI)를 "자원"으로 호출하는 것이 좋습니다.

간단히 말해서 리소스 또는 엔드 포인트는 사용자가 HTTP 프로토콜을 통해 통신 할 수 있도록하는 원격 호스팅 응용 프로그램의 진입 점입니다.


4

다운 투표는 나와 관련이 없지만 출처 (:


각 엔드 포인트는 API가 기능 수행에 필요한 자원에 액세스 할 수있는 위치입니다. 즉, API가 요청을 보내고 리소스가있는 위치를 엔드 포인트라고합니다.

에서 멋진 소스 .


2

용어의 엔드 포인트는 요청 작성에 중점을 둔 URL입니다. 다른 점에서 다음 예를 살펴보십시오.

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

주어진 API에서 동일한 소스에 명확하게 액세스 할 수 있습니다.


1

짧은 대답 : "종점은 시스템이 메시지를 보내거나받을 수있는 메시지 채널의 끝을 모델링하는 추상화입니다"( Ibsen, 2010 ).


엔드 포인트와 URI (명확성)

끝 점이 URI와 다릅니다. 한 가지 이유는 URI가 GET에 대한 엔드 포인트, POST에 대한 엔드 포인트와 같은 다른 엔드 포인트로 구동 될 수 있기 때문입니다. 예:

@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*

끝점과 리소스 (명확성)

끝 점이 리소스와 다릅니다. 한 가지 이유는 서로 다른 엔드 포인트가 동일한 자원으로 이동할 수 있기 때문입니다. 예:

@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

0

간단히 말해서, 엔드 포인트는 통신 채널의 한 끝입니다. API가 다른 시스템과 상호 작용할 때이 통신의 접점은 엔드 포인트로 간주됩니다. API의 경우, 엔드 포인트는 서버 또는 서비스의 URL을 포함 할 수 있습니다. 각 엔드 포인트는 API가 기능 수행에 필요한 자원에 액세스 할 수있는 위치입니다.

API는 '요청'및 '응답'을 사용하여 작동합니다. API가 웹 응용 프로그램 또는 웹 서버에서 정보를 요청하면 응답을받습니다. API가 요청을 보내고 리소스가있는 위치를 엔드 포인트라고합니다.

더 읽어보기 ...

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.