如何使用 curl post 获取 HTTP 状态代码

bla*_*nJa 3 curl

我在 Linux 的命令行中使用 curl 进行 GET 以获得 http 响应代码。响应正文打印为标准输出,这很好,但我看不到任何解决方案如何让 POST 卷曲以打印 HTTP 状态代码(200、404、403 等)。这可能吗?

nba*_*ari 8

要获得只有http_code你可以尝试:

curl -s -o /dev/null --head -w "%{http_code}" -X POST "https://httpbin.org/post"
Run Code Online (Sandbox Code Playgroud)

你可以像这样阅读/记住它:

  • -s 静音模式
  • -o 将输出写入 /dev/null
  • --head 仅获取标题
  • -w "%{http_code}" 写出 HTTP 状态代码

要从您的请求中获取所有标头,请尝试:

curl -I -X POST "https://httpbin.org/post"
Run Code Online (Sandbox Code Playgroud)

它会返回类似的东西:

HTTP/1.1 200 OK
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: *
Content-Type: application/json
Date: Thu, 28 Mar 2019 20:12:01 GMT
Server: nginx
Content-Length: 294
Connection: keep-alive
Run Code Online (Sandbox Code Playgroud)