CURL命令

1. 概述

工作中排查线上问题时,会经常调用问题接口,使用postman太笨重了,且客户不一定能安装这类软件,因此此处记录下使用curl命令调用接口,curl命令调用接口不复杂,记录于此是为了自己找的方便

2. 请求post body

curl -X POST http://ip:port/hello/hello.action -H 'Content-Type: application/json' -d '{"name": "AABBCCDD","age": 18,"address": "南极"}'

-H: 加入header参数

-d: 请求对象的json字符串

2.1. 字符串太长问题

如果字符串太长,可以将json字符串改成一个data.json 文件放在服务器上,命令变成

curl -X POST http://ip:port/hello/hello.action -H 'Content-Type: application/json' -d @data.json

2.2. 参数太多的问题

如果curl 参数太多,比如 -X -H -d .... 太多,导致curl太长,可以考虑使用换行,或者使用文件记录

换行

curl http://ip:port/hello/hello.action \
-X POST \
-H 'Content-Type: application/json' \
-d '{"name": "AABBCCDD","age": 18,"address": "南极"}'

或者把参数写在curl.options文件中

 curl -K curl.options  http://ip:port/hello/hello.action

3. 请求表单入参

如果是post表单入参的接口,可以使用如下的curl命令

curl -G -d 'user=who' --data-urlencode 'param=[{"sex":"","name":"包子"}]' -H 'Content-Type: application/x-www-form-urlencoded' -X POST http://ip:port/hello

这里的特殊接口,有两个参数,其中一个是json字符串,需要编码下才能使用,data-urlencode就是让参数加密用的

  • -G 告诉 curl-d--data 指定的数据转换为 GET 请求 URL 的查询参数。
  • --data-urlencode 表示对 = 右侧的数据进行 URL 编码。

也可以不用这么麻烦,使用单引号包裹下,也是可以的

curl -d 'user=who&param=[{"sex":"","name":"包子"}]' -H 'Content-Type: application/x-www-form-urlencoded' -X POST http://ip:port/hello

4. 添加cookies

curl -X POST http://ip:port/hello.do -d 'password=www&username=admin&verifyCode=1234'   --cookie "SESSION=xxxxxx"
posted @   God-slayer  阅读(303)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示