2012-11-13 6 views
1

J'ai une application de console C++ (exe) qui se connecte à un serveur et écrit des données dynamiques sur la console, comment pourrais-je transmettre ces données dynamiques à une application web en temps réel en utilisant node.js.Application de console C++ Nodej.s

+0

Si votre application dépend de la logique C++, je voudrais plonger dans la transformation de l'application C++ en un module natif. Voici une bonne ressource pour commencer [Native Node Modules] (http://kkaefer.github.com/node-cpp-modules/) – Sdedelbrock

Répondre

0

Vous pouvez démarrer l'application C++ en tant que processus enfant dans votre code serveur Node.js. Je ne sais pas quel cadre (le cas échéant) vous utilisez, mais dans un cadre comme Express.js c'est assez facile à faire dans votre logique de route.

Vous voulez jeter un oeil à la documentation child_process pour le noeud, qui peut être trouvé ici http://nodejs.org/api/child_process.html.

var exec = require('child_process').exec 
var _process = exec('command to invoke binary'); 
_process.stdout.on('data',function(data){ 
    console.log(data); 
}); 

Ce code comprend le module child_process et exécute ensuite la commande nécessaire pour appeler votre C++ binaire. Ensuite, il attend et enregistre toutes les données que ce processus imprime sur stdout vers la console. Au lieu d'imprimer sur la console, vous pouvez inclure ce code dans un serveur HTTP et le renvoyer dans le cadre des données de réponse.

+0

cela fonctionne comme ceci, mais encore une fois les données de la console est dynamique et rafraichie en millisecondes, avec exprès res.send (données) je peux le voir seulement une fois .. – moeezed

Questions connexes