简单命令
- 查看网页源码
curl www.baidu.com
- 将服务器的回应保存为文件,与wget相似
curl -o test.html www.baidu.com
- 跟随服务端的重定向
curl -L URL
- 显示响应头信息,及网页源码
curl -i URL
- 只显示响应头信息
curl -I URL
- 显示整个http通信过程,包括建立连接,发起请求
curl -v URL
- 模拟网络环境
curl --limit-rate 10k www.baidu.com
’
以上将网络带宽限制在每秒10k内
发送表单数据(非json)
curl默认采用的是GET请求
-
采用GET请求
curl localhost:8080/api/items/1
-
采用POST请求(-d即表示请求为POST,所以可以省略下面的-X)
curl -X POST -d "name=test&price=123" localhost:8080/api/items
curl -X POST -d "name=test" -d "price=123" localhost:8080/api/items
-
采用DELETE请求
curl -X DELETE localhost:8080/api/items/1
-
其他请求类似
-
文件上传
例如现在有这样一个表单:
<form method="POST" enctype='multipart/form-data' action="/upload">
<input type=“file” name=“picture”>
<input type=“submit” value="submit">
</form>
对应的命令:
curl -F "picture=@/User/tt/Desktop/a.jpeg" localhost:8080/api/items/upload
指定文件的mime类型(默认为application/octet-stream)
curl -F "picture=@/User/tt/Desktop/a.jpeg;type=image/jpeg" localhost:8080/api/items/upload
指定文件的原始文件名MultipartFile.getOriginalFilename()
curl -F "picture=@/User/tt/Desktop/a.jpeg;filename=test.jpeg" localhost:8080/api/items/upload
以上将原始文件名指定为test.jpeg
发送Json数据
- 在请求头指定Content-Type
curl -H "Content-Type:application/json" -X POST --data '{"name":"test","price":12}' localhost:8080/api/items
使用cookie进行请求
- 保存cookie到文件中
curl -c "cookie.txt" URL
- 使用cookie进行请求
curl -b "cookie.txt" URL
curl -b "name=test" -b "sessionId=123" URL