我最近遇到了sails.js并喜欢它(所以还是一个新手)。我的问题与我部署了我的WebServices和UI。

我的应用程序将有一个Web UI以及移动UI,我选择了以下内容: Web UI - AngularJs + Bootstrap 移动UI - AngularJS + Bootstrap + Cordova(用于本机API访问)

我想在我的网络UI和移动UI上维护普通代码。因此,我所拥有的选项是托管Sails.js作为WebServices API服务器,并在单独的服务器(如nginx / Apache)中主持UI。 我必须做一些代码的选择性分离(ESP。登陆页面+本机层访问)。

这种方法的优缺点是什么?任何经验,投入都会有很大帮助。

有帮助吗?

解决方案

不确定我是否正确地理解您的问题,但我认为您是过度补充。这是我的注意:

您真的不需要将API和WebApp本身分开。您可以将在特定端口(1337是默认值)和nginx上的帆板上的风帆作为反向代理,转发到SAILS并提供符合您UI(JS,CSS,FONTS等)的静态文件。

以下是和示例 配置nginx和带有此设置的节点应用程序。


你基本上有两种选择:


a - 响应设计webapp

具有引导或基础的响应风帆WebApp允许您共享100%的UI。您可以使用所有角度逻辑,样式等,从WebServer Nginx(或从CDN更好地完成CDN)的编译和缩小静止的静态静音。

浏览器和手机连接到Sails API(即yourdomain.com/api/v1 /)


b - webapp + cordova移动原生app

如果您使用Cordova COS,您需要本机访问权限,UI文件也是本机的。您可以共享一些逻辑但是小UI(除非您已经在WebApp中拥有响应设计并从中借用代码)。

在这种情况下,您可以将一系列CSS和Angular模块中的分离的repo中分开的repo介绍,这些repo在UI中共享并通过Git子模块或类似地加载它。但我(个人)更喜欢分离的代码库或响应的webapp。这一切都取决于您的应用程序的代码库的大程度。

webapp和cordova应用程序仍然连接到您的Sails API(即yourdomain.com/api/v1 /)


希望它有助于

其他提示

关于您的问题的代码设计方面,它完全可以使用SAILS来构建WebService或API。

以下资源可能是有用的:

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top