目录:
这是软件开发的本质。 开发人员在开发软件时会考虑最终用户。 看起来很简单,但有时这些用户也是开发人员。 他们不需要为他们分解的东西。 他们甚至不需要简单性。 他们想要的只是访问权限-一种将软件与其软件集成的方式。 这就是API(应用程序编程接口)的来源。我希望着重介绍创建成功的API可以采取的五个步骤。
做你的作业
在软件开发方面,我们谁也不想重新发明轮子。 此时,几乎所有大型Web公司都为其软件产品提供了API。 研究这些API,并尝试选择创建它们的不同设计决策。
有许多不同的技术,但是您将看到的大多数API都将使用RESTful接口或SOAP。 如果您不确定要使用哪个API接口,我建议您使用使用HTTP协议的RESTful方法。 它比SOAP简单,目前更流行,并且在使用基于Web的软件产品时将更容易入门。
始终如一
开发人员最欣赏的一件事是一致性。 其中包括可寻址性,输入参数,输出格式和错误处理。
使用RESTful方法时,有许多不同的URI命名方案。 每个人都有其支持者,因此只需选择一个并坚持下去即可。 输入和输出结构也是如此。 大多数API支持使用XML和JSON作为输入和输出格式。 我建议两者都支持,但要选择默认格式。
对于输入,您的输入要求应该被统一命名,并且应该在您要进行的API调用的上下文中有意义。 对于输出,请确保您使用的是通用数据结构布局。 如果要将一个API调用的输出包装在
通常的做法是在发送回客户端的输出数据中包含某种状态标志。 使用RESTful API方法时,应使用HTTP状态代码来完成。 例如,如果您刚刚对现有数据对象处理了PUT请求,则响应中包含的HTTP状态代码将根据请求的结果而有所不同。
可以使用标准的“ 200 OK”状态代码来表示请求成功,而不是使用任意标志来指示呼叫状态,而可以使用“ 400 Bad Request”状态代码来表示请求已成功。格式错误。 有许多HTTP状态代码可以在不同情况下使用。
使用OAuth
大多数软件产品将涉及某种用户身份验证,以便访问该用户的受保护资源。 当涉及到API时,让客户端收集用户凭据以发送到您的服务器是一种不好的做法。 这就是OAuth的用武之地。
与第三方用户名/密码身份验证相比,OAuth具有许多优势。 最重要的是,客户端永远无法访问用户的凭据。 用户登录时将被重定向到您的服务器。用户登录到您的站点后,他或她将被重定向回到客户端,客户端将在其中接收访问令牌,以用于将来对受保护资源的请求。
使用OAuth的另一个重要好处是用户可以随时取消客户端访问权限。 如果用户出于某种原因决定不再希望客户端能够代表他们访问受保护的资源,则只需转到您创建的界面并取消客户端的访问即可。
尽早开始
要使API成功,您可以做的最重要的事情之一就是尽早开始。 当您编写该函数以在数据库中创建某些条目时,请继续并花一些时间为它编写一个API接口。写好的文档
没有完善的文档,没有什么比杀死API更快的了。 尽管有些开发人员可以采用文档记录较差的API并弄清楚它应该如何工作,但大多数开发人员都不想这样做。
您应该记录每个可用的API调用,并根据它们所作用的数据类型对它们进行分类。 除了记录API调用本身的端点之外,您还应该系统地定义必需和可选的输入参数以及输出数据结构。 输入参数应列出一个默认值(如果有的话),还应指示期望的数据格式,例如数字或字符串。 最后,每个API调用都应具有错误条件和状态代码的列表。
为了完善您的文档,请确保为每个API调用包括一个或两个示例,以介绍常见的输入和输出方案。
API开发:保持简单
尽管开发API似乎是一项复杂的工作,但API本身的想法并不是一个新概念,并且在此处涉及到的每个主题都有大量可用的文档。 只要确保在可以找到它们的地方使用良好的做法,并提供一致的,有据可查的界面即可。