我一直在阅读OAuth,它一直在谈论端点。端点到底是什么?


当前回答

端点是用于与API通信的URL模式。

其他回答

它是通信通道的一端,因此通常会表示为服务器或服务的URL。

术语端点最初用于WCF服务。稍后,尽管这个词被用作API资源的同义词,REST建议将这些理解HTTP动词并遵循REST架构的URI (URI[s])称为“资源”。

简而言之,资源或端点是远程托管应用程序的入口点,允许用户通过HTTP协议与其通信。

术语的端点是用于创建请求的URL。 从不同的角度来看下面的例子:

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

它们可以在给定的API中清楚地访问相同的源。

简单的回答:“端点是对消息通道末端建模的抽象,系统可以通过它发送或接收消息”(Ibsen, 2010)。


端点vs 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

来吧,伙计们:)我们可以用例子来做得更简单:

/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}

将是两个不同的端点-一个用于检索(如“cRud”缩写),另一个用于更新(如“cRud”)

就是这么简单!