Web services 现实生活中的Atom发布协议

Web services 现实生活中的Atom发布协议,web-services,language-agnostic,atompub,Web Services,Language Agnostic,Atompub,我知道一些大玩家已经接受了它,并且实际上已经在以兼容应用程序的方式公开他们的一些服务。然而,我还没有在这个领域找到很多其他(较小的)玩家。您知道有任何web应用程序/服务将应用程序用作其公共API协议吗?你对AtomPub有什么看法?你有使用它的实际经验吗?它的局限性和缺点是什么?你喜欢AtomPub作为你的休息方式,还是有其他最喜欢的方式?为什么 我知道,这些问题很多,不仅仅是一个。不过,我在这里感兴趣的事情很简单——应用程序标准是如何进入市场的,尤其是它在web开发人员中的采用情况如何?到目

我知道一些大玩家已经接受了它,并且实际上已经在以兼容应用程序的方式公开他们的一些服务。然而,我还没有在这个领域找到很多其他(较小的)玩家。您知道有任何web应用程序/服务将应用程序用作其公共API协议吗?你对AtomPub有什么看法?你有使用它的实际经验吗?它的局限性和缺点是什么?你喜欢AtomPub作为你的休息方式,还是有其他最喜欢的方式?为什么


我知道,这些问题很多,不仅仅是一个。不过,我在这里感兴趣的事情很简单——应用程序标准是如何进入市场的,尤其是它在web开发人员中的采用情况如何?

到目前为止,我自己的研究:

  • 自版本2.3起,支持AtomPub作为其API协议
  • 可能是AtomPub领域迄今为止最大的一次拍摄
  • -新的有前途的博客系统将APP作为其主要功能之一进行推广
  • -一个AtomPub 服务器,用于.NET的博客引擎 平台,用C编写#
  • -开源项目 旨在促进API访问 图书馆系统
还有一个Apache模块,用于在文件系统中存储条目。

上次我检查Atompub时(2007年左右),它的实现相当复杂。虽然您可以在午休时间快速组合一些能够发出有效Atom提要的东西,但实现AtomPub是一项相当大的任务

由于更好的库和工具,这一点可能已经改变,但它可能过于复杂,无法由较小的方面来实现,仅仅因为它很酷


而且缺乏杀手级AtomPub客户端应用程序对服务器运营商提供AtomPub接口几乎没有压力。

我所在的公司正在开发大量RESTful服务。 但是,它们都没有公开公共API(从某种意义上说,所有服务都由我们自己的客户机在内部使用)。我们选择REST架构风格的原因是,我们希望我们的服务易于消费,更重要的是,能够很好地扩展

根据我自己的实践经验,我得出结论,如果您希望保持灵活性(在不同的内容模型、附加和扩展与有效负载相关的元数据、统一解析等方面),HTTP+ATOM联合格式是一个好主意。ATOM确保每个人都以统一的方式解释有效负载,而不存在任何歧义

然而,如果没有任何这样复杂的需求,或者没有看到这样的需求,那么ATOM格式可能会有一点开销。(例如,作者、标题等元素在博客/RSS世界中更有意义,而在您的特定问题域中可能没有意义)

此外,如果目标只是在一端序列化数据结构,在另一端重建数据结构,那么大多数web框架(如WCF)都有更吸引人的自定义格式

因此,在我看来,如果您需要在数据表示方面的灵活性,并且如果使用不同类型的客户端的竞争环境很大,那么ATOM Pub是很好的

但是,如果您对潜在的客户机和服务器/客户机使用模式有很好的了解,那么定制格式可能是一个好主意

如果客户端是基于浏览器的,那么像JSON这样的格式非常吸引人

希望这能回答你的问题