Я запускаю программы на Python через Node.js и отправляю запрос на сервер.После запуска программы Python я хочу вывести данные на стороне клиента.Python занимает много времени, но он когда-нибудь выводит данные.
Через некоторое время в вашем браузере появляется следующее сообщение об ошибке:
GET http://localhost:4200/api/test net :: ERR_EMPTY_RESPONSE core.js: 1673 ОШИБКА HttpErrorResponse {заголовки: HttpHeaders, status: 0, statusText: «Unknown Error», url: null, ok: false,…}
Но моя программа на Python прошла.
Я попытался с помощью res.end(), res.send (200) .json () и res.send (), но у меня возникает та же проблема
server.ts
import app from './app';
import { Database } from './database';
const PORT = 8000;
Database.connect();
app.listen(PORT, () => {
console.log('Express server listening on port ' + PORT);
});
app.timeout = 12000000000;
Node.js route.ts
app.route('/api/test').get((req: Request, res: Response) => {
const spawn = require('child_process').spawn;
const ls = spawn('python', [__dirname + '/getPosts.py']);
let inData;
ls.stdout.on('data', (chunk) => {
inData = chunk.toString().replace('\n', '').split(',');
});
ls.stderr.on('data', (chunk) => {
console.log(`stderr: ${chunk}`);
});
ls.on('close', (code) => {
res.json(inData[0]); // -> ['True']
});
});
Угловой сервис.ts
callData() {
return this._http.get<any>(`${'/api/test'}`, {}).pipe(map((res: any) => {
return res;
}));
}