Я новичок в node.js.В настоящее время я запускаю дочерний процесс для выполнения файла JAR при оценке http://localhost:4000/testjar
.После загрузки дочернего процесса потребуется время, чтобы загрузить страницу и отобразить стандартный вывод.
В любом случае я могу сначала завершить загрузку страницы в ожидании запуска дочернего процесса, а затем отправить ответ клиенту после завершения дочернего процесса.Потому что я не хочу, чтобы страница загружалась так долго.
теперь процесс
browser loading -> start child process -> wait child process
-> child process finish ->server send response -> browser finish loading
есть ли в любом случае make like
browser loading -> start child process -> browser finish loading and display pending for output
-> wait child process -> child process finish ->server send response
Это мой testjar.js
var express = require('express');
var router = express.Router();
router.get('/', function(req, res, next) {
var exec = require('child_process').exec, child;
child = exec('java -jar /home/java/testinput.jar',
function (error, stdout, stderr){
console.log('stdout: ' + stdout);
console.log('stderr: ' + stderr);
res.send(stdout);
if(error !== null){
console.log('exec error: ' + error);
}
});
});
module.exports = router;