[英]Separating RESTful services from main web site architecture using Node.js
我正在开始一个新项目,我希望对我的服务器架构的想法有所了解。 这是设置:
许多设备(手机,平板电脑)上都有一个客户端应用程序。 这些都需要与服务器建立RESTful连接以获取数据。 此服务器已存在,并且正在运行Node.js和Express以提供JSON服务。
我需要建立一个客户网站,需要访问与其他客户端设备相同的数据。 用户将登录此网站,与他们的帐户进行交互等。此服务器可以运行Node.js,Apache或其他任何工作。
对我来说,保持RESTful服务器完全无状态并真正只回答Web服务请求似乎是最有意义的。 这意味着我需要使用单独的服务器(或无人机)来运行网站,并将此服务器视为RESTful服务器的另一个客户端。
我是不是太复杂了? 仅从同一服务器提供JSON(用于设备)和HTML(用于浏览器)并将用户会话状态引入该服务器是否有意义?
开发客户网站作为自己的东西,让它像任何其他客户端一样使用REST API。
将它开发为快速应用程序并从主REST服务器中use
它可能很方便。
网站/ index.js:
var app = require('express')();
app.get('/', function(req, res) { res.send('<h1>Website</h1>'); });
module.exports = app;
然后在主REST服务器中:
...
app.use(require('../website'));
app.listen(...);
这使您几乎可以将网站视为不同的应用程序,但仍然可以从同一服务器托管它。 如果需要,以后可以很容易地将网站作为自己的服务器运行。
我为这种情况创建了一个单独的项目。 供参考,请遵循此
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.