在早午餐应用程序中构建服务器API是不好的做法吗?

时间:2014-11-25 05:34:55

标签: javascript node.js web-services express brunch

我正在使用brunch构建单页Web应用程序。该应用程序与我想使用node.js / express编写的后端CRUD API进行对话。对我来说,自然的事情似乎是在我的应用程序的子目录中构建服务器,与app并行。这样做的好处是可以将所有代码集中在一个屋檐下,这样我就可以通过brunch watch --server启动所有代码。

我开始这样做然后我开始担心。如果我有通过npm install --save-dev some-server-dependency安装的服务器端依赖项,这些依赖项是否嵌入到我的单页应用程序的javascript中?这似乎会不必要地增加我的应用程序的大小。如果没有发生这种情况,早午餐如何知道vendor.js中包含哪些依赖项?

这导致了更一般的问题:在与客户端代码相同的项目中开发API是不好的做法吗?如果是,那么构建服务器端API是否有brunch个等价物?

1 个答案:

答案 0 :(得分:0)

这不是一种不好的做法,并且有Brunch骨架示例可以做同样的事情。您已经提到过,您将服务器端代码放在与app不同的目录中,因此只要其他目录不在您的早午餐配置的paths.watched中,那么您的后退-end代码不会包含在您的连接前端代码中。客户端和服务器应用之间的You can even have shared code,非常适合输入验证等。

在某些情况下,您最终可能希望将服务器端代码分解为单独的内容,但是如果/何时出现,您所描述的方法应该很容易实现。

要回答有关节点应用程序的早午餐​​等效项的最后一个问题,有几种工具会在您编辑nodemonsupervisor和{{3}等代码时自动重新启动节点进程}。由于Brunch不会为您处理此部分(未来版本可能会添加此功能),因此无论何时您正在主动攻击服务器端代码,您可能希望使用这些工具之一单独运行brunch watch和服务器。 / p>