我有一个与我的3D打印机对话的python交互式脚本。如果我打开这个脚本,我输入两个命令,将信息输出到 stdout :
我希望与打印机的连接永久保留,因为将来我可能会再次连接到脚本以轮询当前打印作业的ETA。
然后,使用Express的NodeJS允许我创建一个简单的Web API,使用child process与此脚本进行通信,但是我遇到了很多错误。
我的代码:
var express = require('express');
var app = express();
var child_process = require('child_process');
spawn = child_process.spawn;
var n = child_process.spawn('/home/pi/virtualenvs/printrun/bin/python', ['-i','-u','/home/pi/projects/printrun/Printrun/pronsole.py']);
n.stdin.write('connect /dev/ttyACM0 250000');
n.stdin.write('\n');
app.get('/printer_temp', function (req, res) {
n.stdin.write('gettemp');
n.stdin.write('\n');
n.stdout.on('data', function(data){
res.json({printer_status: data}); //I should get kind of like an "OK", with a bunch of other lines.
});
});
var server = app.listen(3000, function () {
var host = server.address().address;
var port = server.address().port;
console.log('Starting server');
});
我收到错误第29行:错误:发送邮件后无法设置邮件。
我做错了什么?