用 curl 测接口:状态码、耗时与新手避坑

举报
yd_291459017 发表于 2026/11/10 12:38:10 2026/11/10
【摘要】 调接口第一步不是写代码,而是先把接口跑通。curl 就是干这个的,它装在绝大多数系统里,一行命令就能看到服务器到底回了什么,比先写一堆代码再排错省事得多。先看最常用的一条:curl -i https://example.com/api。-i 会同时打印响应头和响应体,状态码一眼就能看到。200 是正常,301、302 是跳转,404 是地址错了,500 是服务端出了问题。很多人只看响应体不看...

调接口第一步不是写代码,而是先把接口跑通。curl 就是干这个的,它装在绝大多数系统里,一行命令就能看到服务器到底回了什么,比先写一堆代码再排错省事得多。

先看最常用的一条:curl -i https://example.com/api。-i 会同时打印响应头和响应体,状态码一眼就能看到。200 是正常,301、302 是跳转,404 是地址错了,500 是服务端出了问题。很多人只看响应体不看状态码,接口明明报错了,还以为是自己解析错了。

只想看状态码,不想被一堆正文刷屏,就用 curl -o /dev/null -s -w “%{http_code} %{time_total}s\n” 地址。-o 把正文丢掉,-w 只打印状态码和总耗时,一眼就能判断接口是通了、慢了,还是挂了。

需要带参数的接口分两种。GET 直接把参数拼在地址后面,注意问号和 & 在 shell 里要加引号,不然会被当成后台运行符。POST 则用 -d 传数据,配上 -H “Content-Type: application/json” 告诉服务端这是 JSON,格式写错了服务端大概率直接报 400。

新手最容易踩的三个坑:第一,地址少了 https,默认走了 http,被重定向后还以为接口坏了;第二,接口要鉴权,忘了加 -H “Authorization: Bearer 你的 token”,拿到的永远是 401;第三,超时没设,接口一挂整个脚本就卡在那里,测接口时加个 -m 10,十秒没响应就断开,先保住自己的时间。

把这几条练熟,接口联调时你能先分清是地址错了、参数错了、鉴权错了,还是服务端真挂了,问题定位快一半,写代码时也少走很多弯路。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。