是否可以使用 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
将在正文之后打印响应状态(和换行符)。检查
man curl
您可能会发现有用的其他变量。