curl使用url上传和下载的客户端程序,c表示客户端的含义。
发送一个get请求
curl -X GET \
"https://meethigher.top/census/thread" \
-H "accept: */*"
发送一个post请求,请求体格式是json,具体请求体内容是分页。
curl -X POST \
"http://127.0.0.1:9090/doc/docPageQuery" \
-H "accept: */*" \
-H "Content-Type: application/json" \
-d "{ \"pageIndex\": 1, \"pageSize\": 20}"
以下所有内容,通过crul --help
都可以查看
curl支持简略写法,如curl -v
curl也支持全拼写法,如curl --verbose
多参数可以使用简略写法,如curl -vL
访问我的http域名,会自动重定向到https域名。
curl默认是获取到的重定向前的内容,如果想要直接获取重定向后的内容,需要使用location
curl -L http://meethigher.top
或者全拼写法
curl --location http://meethigher.top
verbose
显示完整的请求过程
curl -v http://meethigher.top
或者全拼写法
curl --verbose http://meethigher.top
header
表示设置请求头
curl -H "User-Agent: I am your father" https://meethigher.top/census/head
或者全拼写法
curl --header "User-Agent: I am your father" https://meethigher.top/census/head
如图,查看ua已经被修改
curl还提供了比header
更精准的参数,基于header实现的,所以只要了解header即可。
request
表示设置请求方式
curl -X POST http://127.0.0.1:9090/doc/downExcel
或者全拼写法
curl --request POST http://127.0.0.1:9090/doc/downExcel
data
表示设置请求体
curl -X POST \
"http://qiandao.meethigher.top/cache/updateList" \
-H "accept: */*" \
-H "Content-Type: application/json" \
-d "{ \"requestList\": [ { \"key\": \"string\", \"value\": \"string\" } ]}"
或者全拼写法
curl -X POST \
"http://qiandao.meethigher.top/cache/updateList" \
-H "accept: */*" \
-H "Content-Type: application/json" \
--data "{ \"requestList\": [ { \"key\": \"string\", \"value\": \"string\" } ]}"
不管是json、form表单、拼参形式,都可以通过data,但是要注意请求头的Content-Type要配套
output
表示将控制台打印改为保存
curl -X GET -o doc.xlsx "http://192.168.101.11:9090/doc/downExcel"
或者全拼写法
curl -X GET --output doc.xlsx "http://192.168.101.11:9090/doc/downExcel"
Multipart formposts - Everything curl
下面举例multipart/form-data
的上传形式
form
表示采用form表单形式
curl -X POST http://127.0.0.1:9090/doc/excelImport -F file=@doc.xlsx
或者全拼写法
curl -X POST http://127.0.0.1:9090/doc/excelImport --form file=@doc.xlsx