У меня есть два node приложения/службы, которые работают вместе, 1. основное приложение 2. второе приложение
Главное приложение отвечает за то, чтобы в конце показать все данные из разных приложений. Теперь я помещаю код второго приложения в основное приложение и теперь его работаю, но я хочу, чтобы он был развязан. Я имею в виду, что код приложения secnod не будет в главном приложении (каким-то образом, чтобы ввести его во время выполнения)
как и вторая услуга, зарегистрирована в главном приложении, вставляя ее код. код его всего два модуля, возможно ли это сделать в nodejs?
const Socket = require('socket.io-client');
const client = require("./config.json");
module.exports = (serviceRegistry, wsSocket) =>{
var ws = null;
var consumer = () => {
var registration = serviceRegistry.get("tweets");
console.log("Service: " + registration);
//Check if service is online
if (registration === null) {
if (ws != null) {
ws.close();
ws = null;
console.log("Closed websocket");
}
return
}
var clientName = `ws://localhost:${registration.port}/`
if (client.hosted) {
clientName = `ws://${client.client}/`;
}
//Create a websocket to communicate with the client
if (ws == null) {
console.log("Created");
ws = Socket(clientName, {
reconnect: false
});
ws.on('connect', () => {
console.log("second service is connected");
});
ws.on('tweet', function (data) {
wsSocket.emit('tweet', data);
});
ws.on('disconnect', () => {
console.log("Disconnected from blog-twitter")
});
ws.on('error', (err) => {
console.log("Error connecting socket: " + err);
});
}
}
//Check service availability
setInterval(consumer, 20 * 1000);
}
В основном модуле я помещаю этот код, и я хочу его отделить, введя его каким-то образом во время выполнения? пример будет очень полезен...