curl -x 可显式指定 http 方法测试 restful api,需搭配 -h、-d 等选项设置请求头与数据体,注意 json 引号处理、文件读取及 -k 跳过 ssl 验证(仅测试用)。

在 Linux 中使用 curl 的 -X(或 --request)选项,可以显式指定 HTTP 请求方法(如 GET、POST、PUT、DELETE 等),这是测试 RESTful API 最常用且直接的方式。
基础语法与常见请求方法
curl -X 后紧跟大写的 HTTP 方法名,再跟上目标 URL。例如:
-
curl -X GET https://api.example.com/users—— 获取资源(GET 通常可省略,因 curl 默认即 GET) -
curl -X POST https://api.example.com/users -d '{"name":"Alice"}' -H "Content-Type: application/json"—— 提交 JSON 数据创建资源 -
curl -X PUT https://api.example.com/users/123 -d '{"name":"Bob"}' -H "Content-Type: application/json"—— 全量更新指定资源 -
curl -X DELETE https://api.example.com/users/123—— 删除资源
配合常用选项提升测试效果
仅用 -X 往往不够,需搭配其他选项才能正确模拟真实请求:
-
-H:添加请求头,比如认证(-H "Authorization: Bearer xxx")、内容类型(-H "Content-Type: application/json") -
-d或--data:发送 POST/PUT 请求体(默认为application/x-www-form-urlencoded;若传 JSON,务必加-H "Content-Type: application/json") -
--data-binary:发送原始二进制或带换行/特殊字符的 JSON(比-d更严格,不自动转义) -
-v或--verbose:查看完整请求与响应头,便于调试 -
-I:仅获取响应头(适合检查状态码或 CORS 头)
处理 JSON 数据的实用技巧
REST API 多数以 JSON 通信,注意几个易错点:
- 单引号包裹整个 URL 和参数,避免 shell 解析双引号内的变量或 $ 符号(如:
curl -X POST 'https://api.example.com/data' -d '{"id":1}') - 若 JSON 值含变量,可用双引号 + 反斜杠转义,或改用
jq构造(例如:jq -n --arg name "Tom" '{name:$name}' | curl -X POST -H "Content-Type: application/json" --data @- https://api.example.com/users) - 用
@filename从文件读取请求体:curl -X PATCH -H "Content-Type: application/json" --data @update.json https://api.example.com/items/42
绕过 SSL 验证(仅限测试环境)
调用自签名或本地开发 HTTPS 接口时,可能遇到证书错误。临时跳过验证用:
-
-k或--insecure:禁用 TLS 证书校验(⚠️切勿用于生产) - 示例:
curl -k -X GET https://localhost:8000/api/health
大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!











