如果我给CURL加上“-f”参数,当状态码不是200时,如何显示响应体?

问题描述 投票:0回答:1

我正在使用curl发起http请求,需要它在返回异常状态码时报错(返回非零),所以我加了“-f”参数。但是这样一来,就不会显示响应体的内容了。返回异常状态码时如何操作curl报错,同时还显示响应体?

http curl http-status-codes
1个回答
1
投票

我会做什么:

curl -sw '%{http_code}\n' https://example.org/xx | tee >(
    hc=$(tail -n1)
    case $hc in
        5*) echo >&2 "5xx range fatal error $hc" ;;
        4*) echo >&2 "4xx range error $hc" ;;
        200) true ;;
        *) echo >&2 "Not 200 HTTP code $hc" ;;
    esac
)
© www.soinside.com 2019 - 2024. All rights reserved.