1

我们即将开始一个新项目,我一直在研究一些新的网络技术。我们想构建一个客户端可以访问的 RESTful api。迄今为止,我们一直在使用 python 和 django/flask 来构建 api 并使用 jquery 作为前端。

我已经阅读了很多关于 emberjs 和 angular 等 javascript 框架以及 express、meteor 和 derby 等 nodejs 解决方案的内容。我真的很喜欢当模型更改时站点应该“自动更新”的想法。我知道有一些库(如 gevent)可以帮助促进套接字级别的通信,但它似乎更像是一个补丁而不是一个优雅的解决方案.

理想情况下,我不想放弃一项经过验证的技术,即用 python(或 php、ruby 等)编写服务器代码来在 nodejs 上构建我的整个应用程序。拥有 RESTful API 很重要,因为我们希望我们的服务是开放且可访问的。

拥有 2 个服务器和 1 个客户端会不会是个坏主意?1 个传统的 api 服务器与客户端上的 javascript 框架进行通信。然后在 api 服务器旁边运行一个 nodejs 服务器,它可以以某种方式与 api 对话,如果它找到更新,则将其传递给客户端。

4

1 回答 1

1

我们想构建一个客户端可以访问的 RESTful api。

理想情况下,我不想放弃一项经过验证的技术,即用 python(或 php、ruby 等)编写服务器代码来在 nodejs 上构建我的整个应用程序。

那么你可能应该使用 Rails 和 Ember.js。我将引用基于 ember 和 rails的 eviltrout( discourse的联合创始人):

富客户端应用程序的一个惊人副作用是您最终会获得经过实战考验的 API。从第一天开始,我们的应用程序就使用了我们自己的 API,所以我们知道它可以工作。

如果我们想为 Android 或 iOS 创建一个原生客户端,那会容易得多,因为我们已经能流利地说 JSON。如果人们想要构建使用 Discourse 的服务,他们将不必进行屏幕抓取。对于我们和使用我们平台的开发人员来说,这是一个巨大的胜利。1

但是您应该记住,到目前为止,ember仍然是一个非常年轻的框架(rc3 v1.0.0)。

我不知道您正在构建什么样的应用程序(关于您为什么要使用节点)如何决定何时使用 Node.js?

于 2013-05-16T09:19:21.960 回答