curl命令是个功能强大的网络工具,可用来请求 Web 服务器,支持通过FTP、FTPS、HTTP、HTTPS、SMTP、Telnet、TFTP等协议,底层使用的是 libcurl 库。可用于文件上传、下载,还可以用来模拟客户端请求,抓取网页、网络监控等。本文介绍使用curl来发送请求。
curl安装
Windows:
- 下载解压:https://curl.haxx.se/download.html
- 加入环境变量
curl -V
查看版本信息:
Linux:1
2yum install curl # CentOS
apt-get install curl # Ubuntu
curl常见用法
- get请求:curl url
- post请求:curl -d ‘xxx’ -X POST $url
- proxy使用:curl -x ‘http://127.0.0.1:8080‘ $url :指定 HTTP 请求通过http://127.0.0.1:8080 代理发出。
其他参数用法:
-H
: “Content-type: application/json” 添加 HTTP 请求头curl -H 'Content-type: application/json' $url
-G
: 把data数据当成get请求的参数发送,用来构造 URL 的查询字符串,与—data-urlencode结合使用-X
:指定 HTTP 请求的方法curl -X POST $url
-d
: 发送post请求数据,@file表示来自于文件--data-urlencode
:发送post请求数据,会对内容进行url编码-u
: username:password用户认证-o
: 写文件,将服务器的响应保存成文件-v
: verbose,打印更详细日志-s, --silent
: 关闭一些提示输出,不输出错误和进度信息。-S
:只输出错误信息-k
:使用SSL时允许不安全的服务器连接-L
:跟随跳转链接
curl实例
1、请求 http://www.baidu.com, 将服务器的响应保存为html文件。1
curl -o /tmp/baidu.html http://www.baidu.com
2、curl设置自定义 header 信息1
curl -H 'Content-type: application/json' -H 'Accept-Language:US' -H 'Cookie:ID=1234' -v https://www.baidu.com/
copy as curl
打开chrome浏览器的开发者工具:
1 | curl "https://clients5.google.com/pagead/drt/ne?di=^%^5B^%^2220140509-01^%^22^%^2C320^%^2C0^%^2C550^%^5D" ^ |
本文标题:cURL工具介绍及简单使用
文章作者:hiyo
文章链接:https://hiyongz.github.io/posts/api-test-curl-guide/
许可协议:本博客文章除特别声明外,均采用CC BY-NC-ND 4.0 许可协议。转载请保留原文链接及作者。