curl 是一种命令行工具,作用是发出网络请求,然后得到和提取数据,显示在"标准输出"(stdout)上面。 参考 curl 用法指南 常用参数123456789101112131415161718192021222324252627282930313233343536# curl url 获取网页源码curl www.sina.com# curl -o file url 网页源码(响应体)导出到文件curl -o sina.html www.sina.com# curl -G --data "foo=bar" url GET 请求并带参数curl -G --data "login=1&name=sindy" localhost:7001# curl -X POST --data 'data' --header 'header' url POST请求curl -X POST --data '{"name":"controller"}' --header 'Content-Type:application/json' http://127.0.0.1:7001/form# 用-d参数以后,HTTP 请求会自动加上标头Content-Type : application/x-www-form-urlencoded。并且会自动将请求转为 POST 方法,因此可以省略-X POST。# -d参数可以读取本地文本文件的数据,向服务器发送。curl -d '@data.txt' https://google.com/login# 增加请求头 # curl -H val url # curl --header val url# curl --head val url# 多个header 要用多个--header选项curl --header "content-type: application/json" url# 指定 ua 同 curl -A val urlcurl --user-agent val url# 指定 referercurl --referer val url# 指定 cookiecurl --cookie "name=xx" url 其他参数1234567891011121314151617181920212223242526272829303132333435363738394041424344454647# curl -L url 自动跳转,获取 url 重定向后的内容curl -L www.sina.com# 用eggjs起个web服务,controller.home.index中 ctx.redirect('https://www.baidu.com')curl http://localhost:7001 # 301 不会返回百度首页内容curl -L http://localhost:7001 # 会返回百度首页内容# curl -i url 增加显示响应头curl -i www.sina.com # 返回响应头和响应体# curl -I url 只显示响应头curl -I www.sina.com# curl -v url # 显示完整的 http 通信过程curl -v www.sina.com# curl --trace output.txt url 显示更加详细的数据curl --trace output.txt www.baidu.com# 多个header要用多个--header选项curl -iv -d "@data.json" http://localhost:7002/component/create --cookie 'csrfToken=REhEag2ATP5vfl2Za6aOXoCT' --header 'x-csrf-token:REhEag2ATP5vfl2Za6aOXoCT' --header 'content-type: application/json' -o out.txt # --data-urlencode 自动urlencode数据curl -X POST --data-urlencode "data" url# --data 默认不会encode数据# --data 同 -dcurl -X POST --data "data" url# -d 参数用于发送 POST 请求的数据体。curl -d 'login=emma&password=123' -X POST https://google.com/login# 可用多个-d发送多个键值对数据curl -d 'login=emma' -d 'password=123' -X POST https://google.com/login# 文件上传curl --form upload=@localfilename --form press=ok url# 返回的 cookie 保存为文件curl -c cookies.txt http://example.com# 发送 cookie 文件curl -b cookies.txt http://example.com# http 认证curl --user name:password url