不确定我是否正确理解了您的问题,但我认为您过于复杂了。这是我的看法:
您实际上不需要将 API 和 webapp 本身分开。您可以将 Sails 运行在特定端口(默认为 1337)和 Nginx 前面作为反向代理,将连接转发到 Sails 并提供符合您的 UI(JS、CSS、字体等)的静态文件。
这是使用此设置配置 Nginx 和节点应用程序的示例。
你基本上有两个选择:
A - 响应式设计 WEBAPP
带有 Bootstrap 或 Foundation 的响应式 Sails webapp 允许您共享 100% 的 UI。您从您的网络服务器 Nginx(或更好的 CDN)提供已编译和缩小的静态数据以及所有 Angular 逻辑、样式等
浏览器和手机连接到您的 Sails API(即:yourdomain.com/api/v1/)
B - WEBAPP + CORDOVA 移动原生应用
如果您使用cordova,因为您需要本地访问,UI 文件也是设备本地的。您共享一些逻辑,但 UI 很少(除非您已经在 web 应用程序中有响应式设计并从中借用代码)。
在这种情况下,您可以在两个 UI 之间共享的单独 repo 中维护一系列 css 和 angular 模块,并通过 git submodule 或类似方式加载它。但我(个人)更喜欢分离的代码库或响应式 Web 应用程序。这完全取决于您的应用程序代码库的增长量。
Webapp 和 cordova 应用程序仍然连接到您的 Sails API(即:yourdomain.com/api/v1/)
希望能帮助到你