在Ruby框架中编写API?

tho*_*edb 8 ruby api rest ruby-on-rails sinatra

嗨,我正在为技术人员编写一个多平台任务应用程序.我想尽可能多地处理平台(web,shell,桌面),因此我决定从服务器/ API开始.

我想用Ruby编写它,但是我认为Rails对于它来说有点过于沉重,即使它可以完成这项工作.Sinatra似乎也不适合这项任务.

所有服务器/ API都可以将简单的请求转换为数据库查询,并在稍后阶段进行一些身份验证和授权.

基本上我想知道:

1)我应该使用REST api还是SOAP api?

2)有这个框架吗?或者最接近的框架是什么?

Aar*_*ian 9

对于喜欢冒险的人来说,还有一个鲜为人知的项目叫做葡萄.它是一个基于机架的应用程序,类似于Sinatra,但仅用于编写API.我认为它还不够成熟,不能用于严肃的项目,但知道它仍然很有趣.


Ben*_*hes 5

1)REST,SOAP是一个糟糕的系统,它在Ruby中的支持非常缺乏.另一方面,REST基本上是ruby默认值,使用起来很少,特别是如果你使用REST/JSON.

2)Sinatra和Rails基本上是你的选择.这取决于这个应用程序的复杂程度.Sinatra可以很好地处理这项任务,但是Rails会以牺牲膨胀为代价为你完成大部分工作.如果您使用ActiveRecord作为数据库,您将已经承担了一些rails膨胀.当身份验证和/或角色发挥作用时,Rails为两者提供了成熟的解决方案.没有任何其他信息,我会倾向于Rails,因为它为您完成了大部分工作,并且在正确编写时,仍然可以相当快.

  • 几乎任何一天我都会痛苦不堪. (2认同)