繁体   English   中英

通过nodejs运行外部程序,并通过socket.io与浏览器进行交互

[英]Running external programs through nodejs and interacting with browser through socket.io

尝试创建运行外部程序(例如C程序或Python程序)的工具(使用nodejs,socket.io)时,该程序在遇到用户输入时会停止响应(尽管它会向浏览器发送询问输入的行) )。

在服务器上:

    var chunk = '';
    python.stdout.on('data', function(data){
    python.stdout.pipe(python.stdin);
        chunk += data;
        console.log(chunk);
        socket.emit('newdata', chunk);
    } );

在客户端上:

    socket.on('newdata', function(d){
     var output = document.getElementById('output');
     output.innerHTML = d;
   })

实际上,一切工作正常,唯一的问题是您启动的程序需要用户输入,而您的node.js代码没有提供。

我不知道您是否可以在需要时提供输入...但是您不能在程序开始时传递参数以避免这种用户输入吗? 这就是我在使用Java / J2EE完成的同一系统上解决问题的方式

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM