我有一个基于 Rails 的服务器,运行多个 REST 服务和一个基于 Rails 的 Web UI,它使用 ActiveResource 与服务器交互。其他客户端(例如:移动)正在使用同一服务器。我必须为 REST 接口生成文档。我需要为每个服务提供服务 URL、输入/输出和错误文档结构。
理想情况下,我想在服务器端使用一个拦截器,它将根据现有流量记录服务。我想知道是否有宝石可以做到这一点。
我有一个基于 Rails 的服务器,运行多个 REST 服务和一个基于 Rails 的 Web UI,它使用 ActiveResource 与服务器交互。其他客户端(例如:移动)正在使用同一服务器。我必须为 REST 接口生成文档。我需要为每个服务提供服务 URL、输入/输出和错误文档结构。
理想情况下,我想在服务器端使用一个拦截器,它将根据现有流量记录服务。我想知道是否有宝石可以做到这一点。
Darrel 和 Jon 是正确的,我会进一步补充说,您的 API 应该在其根源上是可发现的。应该呈现读写动作。
在http://vimeo.com/20781278上查看 Jon Moore 的演讲以进行进一步讨论
当您应用 REST 架构风格时,您不需要记录您的界面。
客户端和服务器之间的合同是由所使用的媒体类型建立的,如果您需要任何其他额外的文档,那么您不是 RESTful。
因此,与其担心记录您的服务,不如将所有描述性工作投入到媒体类型的文档中。关于媒体类型的知识是为您的服务器实现客户端所必需的。