2012-05-25 26 views

回答

7

这里有几个签:

葡萄 - 有点像Sinatra,但用于构建API。最小的依赖关系构建在Rack之上。

火箭裤 - 一种用于构建的API沿着滑轨,葡萄的启发,但更深层次的Rails和ActionPack的集成的工具集,

的Rails :: API - Rails的负不需要构建的API的东西。

我在一些项目中使用了Grape,并且我发现它对于中小型API非常有用,特别是如果您想在现有的rails应用程序的顶部添加API时,更喜欢与轨道控制器完全分离,并仍然能够共享两者之间的模型逻辑。

这就像Sinatra一样,意味着定义端点是直接而灵活的,这可能是好事或坏事。在更大的API上,如果你没有遵守规则,事情会变得有点混乱。

相比之下,火箭裤更有一点自以为是,这给了你更多的结构和开箱即用的功能。使用Grape,随着API的增长,您将需要找到自己重构和构建代码的方法。