Мне нужно отправить запрос на сервер для запуска файла jar со строковым аргументом/параметром и вернуть результаты в виде строки.
Как запускать команды терминала с помощью Dart HttpRequest?
Ответы (1)
На стороне сервера вы можете запустить процесс и отправить результат обратно следующим образом:
HttpServer.bind(InternetAddress.ANY_IP_V4, 3031).then((server) {
server.listen((HttpRequest request) {
var param = request.uri.queryParameters['name'];
Process.run('java', ['-jar', 'myJar.jar', param]).then((pr) =>
request.response
..write(pr.stdout)
..close()
);
});
});
person
Alexandre Ardhuin
schedule
17.09.2013
Пожалуйста, убедитесь, что вы проверяете параметры, если вы передаете данные из Интернета непосредственно в команду терминала. Существует достаточно небезопасных приложений.
- person Patrick Cornelissen; 24.01.2015