Мне интересно, как преобразовать команду curl для выполнения сценария bash с привязкой входных переменных с помощью fetch?
Следующее отлично работает через консоль.
curl -s http://localhost:3001/ident.sh | bash /dev/stdin x627306090abab3a6e1400e9345bc60c78a8bef57 2 1019489767657645
Но затем всякий раз, когда я пытаюсь вызвать его с помощью fetch и даже без аргументов скрипта:
fetch("http://localhost:3001/ident.sh")
.then((resp) => resp.json())
.then((data) => {
console.info(data)
})
ИЛИ ЖЕ
fetch("http://localhost:3001/ident.sh", {
method: 'GET',
headers : {
'Content-Type': 'application/json',
'Accept': 'application/json' }
})
.then((resp) => resp.json()) // Transform the data into json
.then((data) => {
console.info(data)
})
Что просто приводит к:
Uncaught (in promise) SyntaxError: Unexpected token # in JSON at position 0



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


indent.sh не возвращает JSON, он возвращает простой текст, содержащий сценарий оболочки. Если вы хотите его увидеть, используйте resp.text(), а не resp.json().
Это не приведет к выполнению сценария. См. Выполнить двоичный файл командной строки с помощью Node.js, чтобы узнать, как выполнить команду из Node.js.
Спасибо, единственная проблема - столкнуться с некоторыми прекрасными проблемами. Приветствую за то, что указал мне в правильном направлении, несмотря ни на что.
Почему вы звоните в
resp.json()? Это не JSON, это просто текст, содержащий сценарий оболочки.