Api 什么是端点?

Api 什么是端点?,api,authentication,oauth,endpoint,Api,Authentication,Oauth,Endpoint,我一直在读OAuth,它一直在谈论端点。端点到底是什么?它是通信通道的一端,通常表示为服务器或服务的URL。在OpenID身份验证行话中,端点是向其发送(发布)身份验证请求的URL 摘自 要获取Google OpenID端点,请通过向发送get或HEAD HTTP请求来执行发现。使用GET时,建议将Accept头设置为“application/xrds+xml”。Google返回一个包含OpenID提供者端点URL的XRDS文档。端点地址注释为: http://specs.openid.net

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

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

在OpenID身份验证行话中,端点是向其发送(发布)身份验证请求的URL

摘自

要获取Google OpenID端点,请通过向发送get或HEAD HTTP请求来执行发现。使用GET时,建议将Accept头设置为“application/xrds+xml”。Google返回一个包含OpenID提供者端点URL的XRDS文档。端点地址注释为:


http://specs.openid.net/auth/2.0/server 
{Google的登录端点URI}

获得Google端点后,可以向其发送身份验证请求,并指定适当的参数(可在链接页面上找到)。您可以通过向URL发送请求或发出HTTP POST请求来连接到端点。

到目前为止发布的所有答案都是正确的,端点只是通信通道的一端。对于OAuth,您需要关注三个端点:

  • 临时凭证请求URI(在OAuth 1.0a社区规范中称为请求令牌URL)。这是您向其发送请求的URI,以便从服务器/服务提供商处获取未经授权的请求令牌
  • 资源所有者授权URI(在OAuth 1.0a社区规范中称为用户授权URL)。这是一个URI,您可以指示用户授权从临时凭证请求URI获得的请求令牌
  • 令牌请求URI(在OAuth 1.0a社区规范中称为访问令牌URL)。这是一个URI,您可以向其发送请求,以便将授权请求令牌交换为访问令牌,然后使用访问令牌访问受保护的资源
    希望这有助于澄清问题。学习OAuth很有趣!如果在实现OAuth客户端时遇到任何困难,请发布更多问题

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

    术语端点最初用于WCF服务。后来,即使这个词被用作API资源的同义词,REST建议将这些URI(理解HTTP动词并遵循REST体系结构的URI)称为“资源”

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

    来吧,伙计们:)我们可以通过示例简化这一过程:

    /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}
    
    将是两个不同的终点-一个用于retrieving(如“crud”缩写),另一个用于updating(如“crud”)


    就这么简单

    端点是通过网络访问的服务、工具或应用程序的“连接点”。在软件世界中,任何正在运行并“侦听”连接的软件应用程序都将端点用作“前门”。当您要连接到应用程序/服务/工具以交换数据时,您要连接到其端点,该术语的端点是专注于创建请求的URL。 从不同的角度来看以下示例:

    /api/groups/6/workings/1
    /api/v2/groups/5/workings/2
    /api/workings/3
    
    他们可以清楚地访问给定API中的同一个源。

    简短回答:“端点是一个抽象,它对系统可以发送或接收消息的消息通道末端进行建模”()


    端点与URI(消除歧义)

    端点与URI不同。一个原因是URI可以驱动到不同的端点,比如要获取的端点、要发布的端点等等。例如:

    @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
    
    端点与资源(消除歧义)

    终结点与资源不同。一个原因是不同的端点可以驱动到同一个资源。例如:

    @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
    

    API代表应用程序编程接口。它是应用程序通过端点与其他应用程序交互的一种方式。相反,您可以为您的应用程序构建一个API,供其他开发人员通过RESTful的HTTP方法利用/连接。代表性状态转移(REST):

    • 获取:从API端点检索数据
    • PUT:通过API更新数据-类似于POST,但更多关于更新信息
    • POST:将数据发送到API
    • 删除:从给定API中删除数据

    为什么不把它(即所谓的“端点”)称为“基本URI”?“端点”和“基本URI”之间有根本区别吗?谢谢。@Xlsx这取决于实现。一个示例请求可以是获取“/users?name=admin”或“/users/admin”。你可以做一个或另一个,或者两个都做,或者两者都不做。这没用,因为OP要求的是“通用端点”,而不是OAuth。我现在感到困惑了。我赞成提到不同的HTTP方法定义不同的端点。Matthew 20:16 KJV-所以最后一个应该是第一个(……):太糟糕了,堆栈交换没有将这个答案显示为第一个或第二个答案。对我来说,这是列表中最重要的一个,而且肯定是最好的一个,因为我不知道一整套动作和控制器是被视为端点,还是单个控制器中的单个动作定义了端点。这个答案告诉我是后者。@t问一个问题,如果我必须找到相同的实现,它们是被视为相同的端点还是不同的端点?例如,获得公共/ V1/操作和内部/ V1/Ople两个命中相同的实现,那么我们可以将它们视为相同的终点吗?@ Parth。