У меня есть локон запрос, как это:Как проверить запрос curl в скрипте bash?
curl -s -u $user:$password -X GET -H "Content-Type: application/json" $url
который возвращает JSON в качестве ответа. Поэтому я проанализирую ответ, используя jq, чтобы получить некоторые конкретные данные. Примерно так:
curl -s -u $user:$password -X GET -H "Content-Type: application/json" $url | jq '<expression>'
Теперь, если запрос на завивание не работает, очевидно, что операция разбора вызывает уродливую ошибку. Я хочу избежать этого. Как сначала сохранить ответ, а затем проанализировать его, если запрос будет успешным. Я не хочу отображать весь ответ json. Также, если я добавлю -w "%{http_code}"
в свой запрос, он добавит код состояния с ответом JSON, который испортит разбор. Как это решить? Я в основном хочу сначала проверить, успешный ли запрос зависания или нет, затем получить ответ JSON и проанализировать его. Я также хочу получить код состояния, так что если он не сработает, я смогу отобразить код состояния. Но код состояния теперь запутывается с ответом json.
Несвязанный nit: вы, вероятно, должны были сказать «Принять:», а не «Тип содержимого». –