是否有开发团队的Web服务(API)标准或最佳实践?

时间:2008-12-18 05:29:59

标签: web-services

如果您要开始为您的Web应用程序开发API。是否有任何类型的指南,最佳实践或标准来构建Web服务。我在这个主题中看到了一些讨论,我想获得更多信息。

至少要了解获取信息的位置。

提前致谢。

3 个答案:

答案 0 :(得分:1)

关于“网络服务”存在广泛的多样性和自由度。我发现明确记录我们所谈论的内容很有用:

web = transported over HTTP(S)
service = remote procedure call (RPC)

请注意,此处的HTTP(S)部分仅指定传输介质,而不指定内容。另请注意,此部分的RPC部分仅指定行为(实质上是远程调用带有返回结果的参数的命名函数),而不是内容。

出现的一个关键问题是你是否控制了沟通的双方。如果是这样,但特别是如果没有,则需要关注互操作性。

SOAP是实现Web服务的标准,该Web服务指定使用特定格式的XML作为请求和响应的内容。它非常繁重,并且在各种实现中仍然存在互操作性问题。

有很多自定义实现,其中大部分都比较轻,但几乎肯定会遇到互操作性问题。

由于任何形式的内容都可能用于实现Web服务,我建议选择能够处理复杂内容(不同程度),标准化,轻量级和健壮的内容。

我最近倾向于JSON的内容格式。我建议考虑相同,特别是如果你正在考虑实施AJAX。

祝福。

答案 1 :(得分:1)

API 101

我将此网址粘贴为可能答案的近似值。由于我没有得到任何其他答案,我认为这是尽可能接近的。

我想了解更多细节最佳实践大纲,如果有人找到更好的东西,请告诉我将他们的答案标记为已接受。

答案 2 :(得分:0)

如果你能回答其中一些问题,你可能会得到更满意的答案。

  1. 谁是将要使用该服务的受众?
  2. 将使用哪种类型的客户端技术服务
  3. 你可以对它们做什么假设/限制(平台,工具,技能 设置)?
  4. 您的API有多广 - 它会暴露多少种方法?
  5. 安全是一个考虑因素 - 您需要多安全?
  6. 您需要支持交易吗?