1
我試圖用終端命令行訪問python shell來構建一個web應用程序,但是我在使用流時遇到了一些困難。使用websocket節點將命令流式傳輸到python shell
我有一個node.js/websocket服務器,它將傳入的命令發送到python進程的標準輸入(下面的代碼),這似乎工作正常,但由於某種原因,每個傳入命令都會發送多個響應消息。例如,如果發送命令'hello world'
,則會將多個'hello world'
發送回客戶端(以及通過stderr的多個>>>
)。我非常難過......我確信只有一個命令來自客戶端,所以爲什麼我會收到很多回應?
var python = spawn('python', ['-i']);
s.on('run', function(input) {
console.log('Running command: ' + input.command);
python.stdin.write(input.command + '\n');
python.stdout.on('data', function(data) {
var output = '' + data;
s.emit('response', {
output: output
});
console.log('python stdout: ' + output);
});
python.stderr.on('data', function(data) {
var output = '' + data;
s.emit('response', {
error: output
});
console.log('python stderr: ' + output);
});
});
哦咄外面,謝謝! – user1027169