У меня есть некоторый веб-API, который отвечает с JSON, и сценарий оболочки, который отправляет запросы с curl и обрабатывает JSON с jq.
Структура ответа следующая:
- Ответ об ошибке:
{ "error": "error_message" }
- одна структура. - Хороший ответ:
[ { "element1": "value1", "element2": "value2", "element3": "value3" } ]
- массив структур из 3 элементов (фиксированное количество).
Проблема заключается в том, что пользователь можетвведите некоторые данные, вызывающие ответ API с ошибкой.В этом случае я не смогу обработать ответ, поскольку есть другая структура.
Я пытался проверить, является ли это ошибкой с echo ${json} | jq '. | select (.| has("error")) | has("error")'
, но это работает, только если это ответ об ошибке, если он "хороший" - jq завершается неудачей.
Что мне делатьделать?