cURL 中如何返回状态码?图文教程

当使用 curl 命令请求网页时,服务器会返回 HTTP 状态码。可用 -I/-i 查看响应头获取状态码,或用 -o /dev/null -s -w "%{http_code}" 仅获取状态码。

用 Apifox,节省研发团队的每一分钟

cURL 中如何返回状态码?图文教程

免费使用 Apifox

相关推荐

最新文章

API

一体化协作平台

API 设计

API 文档

API 调试

自动化测试

API Mock

API Hub

立即体验 Apifox
目录

当你使用 curl 命令请求一个网页或者服务器时,服务器会返回一个 HTTP 状态码。这个状态码是一个三位数字,它表示了请求的结果。HTTP 状态码主要分为五类:

1xx (信息性状态码) - 表示接收的请求正在处理。

例子: 100 (继续)


2xx (成功状态码) - 表示请求正常处理完毕。

例子: 200 (成功), 201 (已创建), 204 (无内容)


3xx (重定向状态码) - 表示需要后续操作才能完成这一请求。

例子: 301 (永久移动), 302 (临时重定向), 304 (未修改)


4xx (请求错误状态码) - 表示请求可能出错,妨碍了服务器的处理。

例子: 400 (错误请求), 401 (未授权), 403 (禁止), 404 (未找到)


5xx (服务器错误状态码) - 表示服务器处理请求出错。

例子: 500 (内部服务器错误), 502 (错误网关), 503 (服务不可用)
在使用 curl 命令时,可以查看返回的 HTTP 状态码,这对于调试和分析网站请求很有帮助,下文是一些常见的方法来获取 curl 命令返回的状态码。


1.使用 -I 或 -i 选项

最简单的方法就是在 curl 命令后加上 -I-i 选项。这样可以在响应结果中看到完整的 HTTP 头信息,包括状态码。


例如:

curl -I https://apifox.com

这会显示类似这样的输出:

HTTP/1.1 200 OK
Server: openresty/1.21.4.1
Date: Fri, 26 Apr 2024 03:35:31 GMT
Content-Type: text/html
Content-Length: 242152
Last-Modified: Fri, 19 Apr 2024 23:08:54 GMT
Connection: keep-alive
Vary: Accept-Encoding
Set-Cookie: abflag=1714102531; domain=.apifox.com ;path=/; Expires=Tue, 19-Jan-2038 03:14:07 GMT
ETag: "6622f986-3b1e8"
Cache-Control: max-age=300
Accept-Ranges: bytes
cURL 中如何返回状态码

可以看到状态码是 200 OK,表示请求成功。


2.使用 -o /dev/null 和 -w "%{http_code}"

如果你只想看到状态码,不需要其他信息,Linux 系统可以使用 -o /dev/null-s -w "%{http_code}" 选项:

curl -o /dev/null -s -w "%{http_code}" https://apifox.com

这样,curl 会将访问的网站响应结果中除状态码之外的所有输出重定向到/dev/null(即不显示),只在命令行中输出 HTTP 状态码。


Windows 使用 NUL 来提供类似的功能。所以,当你尝试在 Windows 使用类似于 UNIX 的命令时,你应该将 /dev/null 改为 NUL

curl -o NUL -s -w "%{http_code}" https://apifox.com
cURL 中如何返回状态码


使用 Apifox 执行 cURL 命令

要执行 cURL 命令,我更推荐使用 Apifox 进行调试,因为在 Apifox 中你可以将 cURL 命令及其结果保存起来并分享出去。在 Apifox 中调试 cURL 非常便捷,只需创建一个新的 HTTP 项目,然后在项目中将鼠标悬停在 + 号图标上,点击"导入 cURL",即可打开一个输入框。

cURL 中如何返回状态码

将 cURL 命令粘贴到输入框,然后点击【确定】即可。

cURL 中如何返回状态码

保存后 Apifox 会将这个 cURL 命令解析成接口,并生成一个快捷请求,你可以点击“发送”按钮对该进行调试,或者将该快捷请求保存为接口。

cURL 中如何返回状态码


在 Apifox 中导出 cURL 也非常简单,你只需要将鼠标移动到接口的...图标那里,然后点击“复制 cURL”即可。

cURL 中如何返回状态码


或者当你的接口发送成功后,在实际请求中查看,非常的方便,快去试试吧!

cURL 中如何返回状态码

总结

当使用 curl 命令请求网页时,服务器会返回 HTTP 状态码,它是三位数字,表示请求结果。状态码分五类:1xx 信息性、2xx 成功、3xx 重定向、4xx 请求错误、5xx 服务器错误。可用 -I/-i 查看响应头获取状态码,或用 -o /dev/null -s -w "%{http_code}" 仅获取状态码。在 Apifox 中更方便,只需导入 curl 命令即可查看详细信息和调试请求。Apifox 还支持导出 curl 命令,是调试和分析网站请求的好工具。

Apifox

学习更多: