Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save ebarault/3344bf8e0a8769d028c302b16e0caef5 to your computer and use it in GitHub Desktop.
Save ebarault/3344bf8e0a8769d028c302b16e0caef5 to your computer and use it in GitHub Desktop.
Curl - Get status code and response body
URL="http://stackoverflow.com/"
# store the whole response with the status at the and
HTTP_RESPONSE=$(curl --silent --write-out "HTTPSTATUS:%{http_code}" -X POST $URL)
# extract the body
HTTP_BODY=$(echo $HTTP_RESPONSE | sed -e 's/HTTPSTATUS\:.*//g')
# extract the status
HTTP_STATUS=$(echo $HTTP_RESPONSE | tr -d '\n' | sed -e 's/.*HTTPSTATUS://')
# print the body
echo "$HTTP_BODY"
# example using the status
if [ ! $HTTP_STATUS -eq 200 ]; then
echo "Error [HTTP status: $HTTP_STATUS]"
exit 1
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment