curl是一种命令行工具,做用是发出网络请求,而后获得和提取数据,同时支持文件上传和下载,因此是综合的请求传输工具。html
curl https://juejin.im
curl https://juejin.im:8888
复制代码
curl -L http://juejin.im
复制代码
curl -o [文件名] https://juejin.im # -o:将文件保存为命令行中指定的文件名的文件中
curl -O URL1 -O URL2 # -O:使用URL中默认的文件名保存文件到本地。 同一站点下多个文件,curl会尝试重用连接(connection)
复制代码
curl -O http://www.gnu.org/software/gettext/manual/gettext.html # 当文件在下载完成以前结束该进程
curl -C - -O http://www.gnu.org/software/gettext/manual/gettext.html # 经过添加-C选项继续对该文件进行下载,已经下载过的文件不会被从新下载
复制代码
curl -i https://juejin.im # `-i` 显示http response的头部信息
复制代码
curl -v https://juejin.im
复制代码
curl --trace output.txt https://juejin.im # 原始数据
curl --trace-ascii output.txt https://juejin.im # 通过 ascii 编码的原始数据
复制代码
curl -s https://juejin.im 不输出错误信息、进度信息
curl -S https://juejin.im 只输出错误信息
复制代码
curl --limit-rate 100k https://juejin.im #模拟带宽100k/s
curl --limit-rate 200b https://juejin.im #模拟带宽200b/s
复制代码
curl https://juejin.im
复制代码
curl -X POST --data "data=xxx" https://juejin.im
curl -X POST --data "@data.json" https://juejin.im # 读取data.json数据,发送请求
curl -X POST --data-urlencode "data=xxx" https://juejin.im # 参数通过表单编码,避免符号被转义
复制代码
curl -X GET https://juejin.im # 默认GET
curl -X POST https://juejin.im
curl -X PUT https://juejin.im
curl -X DELETE https://juejin.im
复制代码
curl --form upload=@[local_filepath] --form press=OK https://juejin.im
curl -F 'file=@[local_filepath]' https://juejin.im # 与 --form upload=@[local_filepath] --form press=OK 等效
curl -F 'file=@[local_filepath];type=image/png' https://juejin.im # MIME 类型 默认为 application/octet-stream
复制代码
curl --header "Content-Type:application/json" https://juejin.im
复制代码
curl --proxy 'http://juejin.im' https://juejin.im
复制代码
curl --referer http://juejin.im https://juejin.im
复制代码
curl --user-agent "[User Agent]" https://juejin.im
# window chrome代理 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36'
复制代码
curl --cookie "name=xxx" https://juejin.im
curl -D cookieFile https://juejin.im # 保存 服务器返回的cookie 到 文件cookieFile
curl -c cookieFile https://juejin.im # 保存 服务器返回的cookie 到 文件cookieFile
curl -b cookieFile https://juejin.im # `-b cookieFile` 使用以前保存的cookie文件 用做请求
复制代码
curl -k https://juejin.im
复制代码
后台的童鞋,常常会遇到线上接口请求报错须要重现修bug的状况。这时候正常打日志不只麻烦,还容易打不许。
chrome
但若是学了curl命了,咱们就能够把出问题的请求,以curl命令形式保存下来(以下图)。
shell
须要重现的时候,咱们执行性命令就能够重现 bug 啦,peace&love❤️json