我一直在使用 Phalcon 开发我的网络系统,并添加了一个 API,可以通过该 API 发送订单并请求库存号码。
我是 Web 服务新手,所以只是想知道,我的 API 是 RESTful API 吗?
返回的数据通常是 200 状态代码,表示成功或失败(返回 401 的无效 API 密钥除外)。
这个问题你可以自己回答。也许您的 API 是 RESTful API。
但在此之前,您需要了解一些事情...
Create
、Retrieve
、Update
和 Delete
分别由 HTTP POST
、GET
、PUT
和 DELETE
方法处理。你们的 API 提供 JSON 和 XML 吗
优先考虑 JSON 支持,除非您处于需要 XML、架构验证和命名空间的高度标准化和监管行业。并提供 JSON 和 XML,除非成本惊人。理想情况下,让消费者在使用 HTTP Accept 标头或仅将 URL 上的扩展名从 .xml 更改为 .json 之间切换。
但请注意,一旦我们开始讨论 XML 支持,我们就开始讨论验证模式、命名空间等。除非您的行业需要,否则一开始就避免支持所有这些复杂性。 JSON 的设计目标是简单、简洁且实用。如果可以的话,创建您的 XML,使其看起来像这样。
换句话说,使返回的 XML 更像 JSON:简单且易于阅读,不存在架构和命名空间详细信息,仅显示数据和链接。如果最终变得比这更复杂,XML 的成本将是惊人的。根据我的经验,在过去几年中没有人使用 XML 响应。就是太贵了,吃不起。
也请阅读对此answer的宝贵意见。这真的会有帮助。 (如果您想了解更多详细信息,也可以阅读答案)
您的服务符合 HTTP 和 URI 标准吗?它提供标准的超媒体格式吗?您的客户是否遵循服务提供的超链接,而不是自己构建以下 URI 和方法?超链接和响应数据是否用元数据注释,客户端可以使用元数据来理解响应的含义以及如何处理它?您的客户是否在每次请求时都发送识别客户身份所需的信息?服务器完全重启后这些请求会起作用吗?