跳转到主内容
websoft网络软件专家 - 深耕网络技术,打造实用软件!

Linux curl 怎么发送 POST/JSON 请求?标准格式

用curl发送POST请求携带JSON数据需指定POST方法、设置Content-Type为application/json,并通过-d传入合法JSON字符串;推荐使用单行双引号格式或--data-binary@file.json读取文件。 用
curl
发送 POST 请求并携带 JSON 数据,核心是两件事:指定请求方法为 POST ,并正确设置 Content-Type 为
application/json
,再把 JSON 数据通过
-d
(或
--data
)传入。 基本格式(推荐) 最标准、最常用的一行命令: curl-X POST -H "Content-Type: application/json" -d '{"key":"value","num":123}' https://api.example.com/endpointphp版微信js-sdk支付接口类php版微信js-sdk支付接口类下载 关键参数说明 -X POST :显式声明请求方法(可省略,因为
-d
默认触发 POST) -H "Content-Type: application/json" :必须加,否则服务端可能无法识别 JSON 体 -d '{"key":"value"}' :JSON 数据要写成**单行字符串**,字段名和字符串值都必须用双引号(JSON 标准要求) 如果 JSON 内容较长或含特殊字符(如换行、单/双引号),建议用
--data-binary @file.json
从文件读取 实用技巧与常见写法 省略
-X POST
(更简洁): curl -H "Content-Type: application/json" -d '{"name":"Alice"}' https://api.example.com/users 发送空 JSON 对象: curl -H "Content-Type: application/json" -d '{}' https://api.example.com/ping 从文件读取(推荐用于复杂 JSON): curl -H "Content-Type: application/json" --data-binary @data.json https://api.example.com/upload 带认证或额外 Header(如 Token): curl -H "Content-Type: application/json" -H "Authorization: Bearer abc123" -d '{"msg":"hi"}' https://api.example.com/msg 注意避坑 别用单引号包裹整个 JSON(如
'{"k":'v'}'
)—— shell 会报错;内部单引号需转义或改用双引号 别漏掉
Content-Type
头,否则后端常返回 415 Unsupported Media Type 中文或特殊字符确保 JSON 是 UTF-8 编码 ,Linux 终端一般默认支持,无需额外处理 调试时加
-v
查看完整请求/响应: curl -v -H "Content-Type: application/json" -d '{"test":true}' https://httpbin.org/post 基本上就这些。记住三要素:POST 方法、JSON 头、合法 JSON 字符串 —— 其他都是锦上添花。

相关文章