通常状况下咱们会在网页上请求后台接口,可是对于须要进行屡次测试的人来讲,每一次都要在网页上模拟请求,是存在很大局限性的。所以,咱们须要学会模拟请求,以达到跟实际请求同样的效果。json
curl [options] [params] {网页url}
一、options = -v 显示详细的请求信息bash
curl -v www.baidu.com
二、options = -X 指定请求方式服务器
GET请求:cookie
curl -X GET https://www.baidu.com/
POST请求:app
curl -X POST -d "data=123&key=456" http://localhost:8080/search
因为-d
选项为使用POST
方式向server
发送数据,所以在使用-d的时候,能够省略-X POST
。使用-d时,将使用Content-type:application/x-www-form-urlencoded
方式发送数据。curl
curl -d "q=三生三世&type=note&page=1&order_by=default" https://www.jianshu.com/search/do\?q\=%E4%B8%89%E7%94%9F%E4%B8%89%E4%B8%96\&type\=note\&page\=1\&order_by\=default
若是想使用JSON
形式post
数据,可使用-H
指定头部类型post
curl -H "Content-Type:application/json" -d '{"data":"123","key":"456"}' http://localhost:8080/search
若是想在请求的时候带上Cookie,能够这样测试
curl -H "Cookie:username=XXX" {URL}
curl -H "Cookie:username=XXX" {URL}
4 options = -c 存储cookie到文件
curl -d "name=zhangsan&password=123" http://localhost:8080/login -c ./cookie
使用用户名和密码登陆系统,并将cookie信息存储在当前目录的cookie文件url
curl http://localhost:8080/login -b ./cookie
curl --cookie "name=zhangsan" http://localhost:8080/login
7.options = -F/--form 表单提交操做
curl能够经过-F命令来以Content-Type:multipart/form-data的形式向server post数据,该命令容许提交二进制文件等。可使用@前缀来制定提交的内容为一个文件,也可使用<符号来提交文件中的内容spa
curl -F profile=@portrait.jpg https://example.com/upload.cgi
向服务器上传一个图片,图片的表单域名为profile,内容为protrait.jpg的二进制
做者:xurna连接:https://www.jianshu.com/p/7965c56c5a2e來源:简书简书著做权归做者全部,任何形式的转载都请联系做者得到受权并注明出处。