Я совершенно новичок в NodeJS, и сейчас я просто делаю попытки и ошибки на основе кода, который я нахожу.
Я хочу контролировать свой роутер дома. Чтобы получить данные, я должен выполнить http-запрос через nodejs и сохранить «токен» в переменной. Этот токен устанавливается в конец реального запроса данных.
Вывод curl:
[long html stuff]
var _httoken = 12391231849184ß
[even longer html stuff]
В bash curl я бы сделал это так:
token=`curl -v --silent http://192.168.2.1/html/login/status.html?lang=de 2>&1 | grep _httoken | grep -o '[0-9]\+'
Но когда я пытаюсь получить это так:
const { exec } = require('child_process');
exec('curl -v --silent http://192.168.2.1/html/login/status.html?lang=de 2>&1 | grep _httoken | grep -o '[0-9]\+'', (err, stdout, stderr) => {
if (err) {
// node couldn't execute the command
return;
}
// the *entire* stdout and stderr (buffered)
console.log(`stdout: ${stdout}`);
console.log(`stderr: ${stderr}`);
});
Я получаю:
exec('curl -v --silent http://192.168.2.1/html/login/status.html?lang=de 2>&1 | grep _httoken | grep -o '[0-9]\+'', (err, stdout, stderr) => {
SyntaxError: Invalid or unexpected token
У \
.
Как получить сохраненные цифры?
Заранее спасибо