Curl

在 curl 中返回狀態碼和正文

  • October 22, 2021

是否可以使用 curl 呼叫 REST 服務(POST 方法)並獲取:

  • HTTP 狀態碼。
  • 響應體。

標頭、方法等其他資訊與我的案例無關,實際上在測試時會增加混亂。

例如,我正在做:

$ curl -i -H 'Content-Type: application/json' -d @payload.json localhost:8080/apply
HTTP/1.1 100 

HTTP/1.1 400 
Content-Type: text/plain;charset=UTF-8
Content-Length: 42
Date: Fri, 22 Oct 2021 16:29:18 GMT
Connection: close

Invalid product: product does not exist

我知道服務正在返回400,我可以看到,而且我也可以看到響應錯誤Invalid product: product does not exist,這很好。

但是,是否有可能擺脫顯示器的其餘部分?

您可以將/與包含變數的格式字元串一起使用,而不是-i顯示響應標頭:-w``--write-out``http_code

curl --write-out '%{http_code}\n' ...

將在正文之後列印響應狀態(和換行符)。檢查man curl您可能會發現有用的其他變數。

引用自:https://unix.stackexchange.com/questions/674393