Por un lado el servidor A importa funciones del proxy P (mediante require) y lo utiliza para intercambiar información con B. Aquí el codigo en cuestion:
Servidor A
Código:
Por otro lado, aqui el codigo del proxy P que contacta con el servidor B para conseguir una lista de mensajes:.... ... var p = require('./p.js'); ... ... console.log(p.getMessages());
Código:
El problema, como podreis haber podido deducir, es que cuando A realiza el console.log, P todavía no ha obtenido el valor "data" de B por lo que se muestra vacio.var net = require('net'); var HOST = '127.0.0.1'; var PORT = 10100; var client = new net.Socket(); exports.getMessages = function () { client.write('getMessages); client.on('data', function(data) { console.log("Received: " + data); return data; }); } ......
He estado buscando información y no se si deberia usar promesas para solucionar esto.
Podríais ponerme un ejemplo de solución a este problema?
Saludos y gracias de antemano.