curl 是一种命令行工具,作用是发出网络请求,然后获取数据,显示在”标准输出”(stdout)上面。它支持多种协议,使用curl -h命令可查看其帮助手册,下面列举其常用功能:
1. -X/—request 参数
指定什么类型的请求,如 GET、POST。
# -X GET是可选的curl -X GET http://localhost:8080/search?data=123curl -X POST -d "data=123&key=456" http://localhost:8080/search# JSON数据以 请求体(body)方式请求curl -H "Content-Type:application/json" -X POST --data '{"message": "sunshine"}' http://localhost:8000/
2. -d/—data 参数
HTTP POST方式传送数据。
-d 选项是以使用 POST 方式向 Server 发送数据,因此在使用 -d 的时候,可以省略 -X POST。请注意,使用 -d 时,将使用 Content-type:application/x-www-form-urlencoded 方式发送数据。如果想使用 JSON 形式 post 数据,可以使用 -H 指定头部类型。如:
curl -H "Content-Type:application/json" -d '{"data":"123","key":"456"}' http://localhost:8080/search
3. -H/—header 参数
自定义头信息传递给服务器。
curl -H "Host:192.168.0.1" -H "accept-language:zh-cn" URL
4. -c/—cookie-jar 参数
操作结束后把 cookie 写入到这个文件中。
curl -d "name=zhangsan&password=123" http://localhost:8080/login -c ./cookie
5. -b/—cookie 参数
cookie 字符串或文件读取位置
# cookie 文件curl http://localhost:8080/login -b ./cookie# 直接指定 cookiecurl --cookie "name=zhangsan" http://localhost:8080/login
6. -I/—head
只显示请求头信息
curl -I https://www.baidu.com
