提供API意味着什么

时间:2014-08-07 09:02:17

标签: android web-services api webserver

我想到了这个问题,

  

XYZ应用程序是否提供API?

现在我不确定“提供”和API意味着什么。

现在让我们假设我正在使用Android应用程序,我的应用程序将根据单个用户的操作与多个用户交谈。现在,我需要在网络上托管一些服务。

用户将与服务器联系,我的后端服务将处理所需的任何内容(保存数据库中的内容/将某些消息转发给其他人或任何其他内容。)。

  • 现在我猜是否有人可以拨打此服务,并使用它?
  • 我的后端服务是否会被称为API?
  • “提供”API需要做些什么?
  • 或者我该如何“阻止”访问我的API?

1 个答案:

答案 0 :(得分:3)

提供API意味着您提供(n)服务器端端点,您的应用程序或程序员可以使用某种请求(通常是HTTP请求)来命中。

您如何实施这取决于您自己。这些天大多数人试图提供某种具有结构良好的URL方案的HTTP端点(即www.mysite.com/users/statistics),根据您尝试执行的HTTP操作,它将表现不同。这通常被称为RESTful API(什么是RESTful并且不被认为是RESTful一直是争论的热门话题,但它是人们调用这些类型的API)。请查看http://www.ibm.com/developerworks/webservices/library/ws-restful/,了解相关内容。

直接回答您的问题:

  1. 您可以控制谁可以使用您的API,以及他们使用它的频率。
  2. 从技术上讲,是的,遇到后端服务的事情将被视为API调用。
  3. 在任何人能够就“提供”API需要做些什么之前,您需要先描述一下当前的架构。
  4. 您可以做很多事情来控制对API的访问 - 从基本身份验证到发布API密钥/令牌。请查看http://www.slideshare.net/rnewton/making-sense-of-api-access-control以获得合理的解释。
  5. 希望有所帮助!