我有2个子应用程序,安装方式如下:
//server.js
app.use('/am/api', subapp1)
app.use('/ucm/api', subapp2)
每个子应用程序返回一个快速路由器实例,例如:
//subapp1
var express = require('express');
var router = express.Router();
router.route('/msgs/:msg_id')
.get(fn);
export default router
//subapp2
var express = require('express');
var router = express.Router();
router.route('/users/:user_id')
.get(fn);
export default router
我想让这些子应用程序相互通信,就像subapp1需要来自subapp2的数据一样。有最好的做法怎么做?我不希望这些子应用程序之间存在任何文件依赖性。我需要一个干净的界面。
答案 0 :(得分:0)
我认为最好的解决方案是将服务分开并在此服务中进行此通信。例如:
service.js:
const service = {};
service.action1 = function () {
console.log('Communication with subapp2.');
}
service.action2 = function () {
console.log('Communication with subapp1.');
}
module.exports = service;
在路线中:
const service = require('./service');
subapp1 = function () {
service.action1();
}
subapp2 = function () {
service.action2();
}