使用curl代替postman

使用curl代替postman

curl是一个命令行工具,功能是发出请求并得到应答,最后输出到终端。

使用

  1. 查看源码
1
2
3
4
5
6
7
8
# 打印在终端中
curl www.baidu.com

# 将输出保存为文件
curl -o <filename> www.baidu.com

# 自动跳转
curl -L www.baidu.com
  1. 显示头信息
1
2
3
4
5
# 显示代码和头信息
curl -i www.baidu.com

# 只显示头信息
curl -I www.baidu.com
  1. 显示通信过程
1
2
3
4
5
curl -v www.baidu.com

# 查看详细信息
curl --trace <filename> www.baidu.com
curl --trace-ascii <filename> www.baidu.com
  1. GET/POST

GET:

1
curl baidu.com/form.cgi?data=xxx

POST:

1
curl -X POST --data "data=xxx" baidu.com/form.cgi

表单编码:

1
curl -X POST--data-urlencode "date=April 1" baidu.com/form.cgi
  1. http动词

默认GET

-X参数用来指定动词。

1
2
curl -X POST www.baidu.com
curl -X DELETE www.baidu.com
  1. 上传文件
1
curl --form upload=@filename --form press=OK [URL]
  1. referer

该字段用于指示从哪个url跳转而来

1
curl --referer http://www.baidu.com http://www.baidu.com
  1. User Agent

该字段表示客户端的代理信息。

模拟用户代理:

1
curl --user-agent "[User Agent]" [URL]
  1. cookie

发送cookie:

1
curl --cookie "name=xxx" www.baidu.com
  1. 增加头信息
1
curl --header "Content-Type:application/json" http://example.com
  1. HTTP认证
1
curl --user name:password baidu.com

参考

  1. http://www.ruanyifeng.com/blog/2011/09/curl.html
  2. http://www.ruanyifeng.com/blog/2019/09/curl-reference.html

评论