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

ie3xauqp  于 2022-11-13  发布在  其他
关注(0)|答案(3)|浏览(192)

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

oaxa6hgo

oaxa6hgo1#

要只获取http_code,可以尝试:

curl -s -o /dev/null --head -w "%{http_code}" -X POST "https://httpbin.org/post"

你可以这样读/记:

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

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

curl -I -X POST "https://httpbin.org/post"

它将返回类似于以下内容的内容:

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
7d7tgy0s

7d7tgy0s2#

curl -X POST --write-out %{http_code} --silent --output /dev/null --data  "{your_json_input}}" -H 'Content-Type:application/json' http://your_url
rjzwgtxy

rjzwgtxy3#

较新版本的curl具有与--fail相同的返回值,但仍打印响应正文。

相关问题