我们正在构建一个REST兼容的API。后端是用PHP实现的,我们希望接口遵循约定而不是配置座右铭。
许多应用程序接口消费者将是Rails开发人员,遵循测试驱动开发策略来构建应用程序接口,我们已经考虑使用ActiveResource来实现消费者,同时使应用程序接口符合这些标准。
这种方法已经失宠了吗?我们还可以遵循哪些其他选项或约定,以便在构建了强大的API (如Flickr、Facebook、Twitter等)后感到舒适?
谢谢你的指点。
乍得
发布于 2009-08-18 20:53:58
ActiveResource要求XML非常冗长,而且设计得不是很好(实体的嵌套可能真的很麻烦)。
如果您的绝大多数用户都是Rails开发人员,那么使用符合ActiveResource的REST服务可能是可行的,但对于非Rails用户来说,它们看起来相当丑陋。
如果您希望任何技术能够使用它,我不会使用ActiveResource,而是创建适合数据的XML (或JSON)。
我已经构建了一些使用ActiveResource进行通信的系统,最近我发现按照上面的建议更容易做到这一点。
发布于 2009-08-18 20:43:41
使用ActiveREsource约定将HTTP方法和urls映射到API操作是一个好主意,特别是当您说您的许多用户将使用Rails时。除此之外,我建议您阅读"Your Web Service Might Not Be RESTful If…“,因为正确处理GET/POST/PUT/DELETE并不是真正实现REST所需的全部。顺便说一句,您提到的许多apis都不是真正的REST。
发布于 2011-11-22 08:25:52
可能有点晚了,但是如果你正在为你的数据构建API,这绝对值得一读:https://plus.google.com/112678702228711889851/posts/eVeouesvaVX
https://stackoverflow.com/questions/1295870
复制相似问题