Node-PerfectAPI vs Restify.js vs ExpressJS vs Node-APIServer

Nic*_*ick 17 node.js express

我是ExpressJS的新手.我想为我的服务创建API,它将由其他服务器直接使用,也是移动应用程序/浏览器的一部分.我刚刚发现了Restify,Node-PerfectAPI,Node-APIServer,我不知道它们之间有什么区别.

有人可以详细说明每个框架的差异和优缺点.

为什么选择Express/NodeJS与其他框架来创建API?

Ste*_*ell 9

免责声明:我是node-perfectapi的作者.

perfectapi的重点是让开发人员从开始到生产就绪变得简单.它比节点解析更抽象.这样做的影响是您在设计API方面的灵活性较低,但与此同时,您应该能够以更少的专业知识更快地获得生产准备.

restify和perfectapi都具有可比性.

此答案中的链接转到突出显示每个解决方案优势的页面.

  • 对于其他人发现这个问题,"我目前还没有维护这个软件包.你可能应该根据节点完美的主页找到你需要的另一个工具." (13认同)
  • 如果没有perfectapi,您将不得不编写http内容,即http标头,响应代码,格式化数据.根据您的需要,您可能需要编写测试页和文档代码.如果要处理负载,则必须使用跨cpus的扩展. (2认同)

yad*_*taf 5

我也在研究类似的问题.您可能感兴趣的主要区别之一是性能.我刚刚从"perfect-api"的开发者那里找到了一篇博客文章,将他的框架与其他2人进行了比较.http://blog.perfectapi.com/2012/benchmarking-apis-using-perfectapi-vs-express.js-vs-restify.js/

评论说,Restify现在做得更好.

从我(有限)的经验来看,我会说express.js比Restify更容易使用,并提供了一些很好的工具,如暴露的connect.js.例如,这样可以避免编写静态文件服务器的痛苦,甚至认为Connect仍然可以与Restify集成.

另一方面,Restify将使一些常见的API任务更容易.例如,它提供了一个节流引擎以及一个API转换系统,在您处理无法控制的客户端的环境中,这是非常必要的.


sur*_*rui 5

您还应该考虑https://npmjs.org/package/hapi

看起来很有希望.在https://www.youtube.com/watch?v=Recv7vR8ZlA中有一个关于该框架的讨论,其中hapi的主要贡献者讨论了什么使API框架发生变化.