curl是一個命令行工具,對於web開發者來講,這工具是很是有用的。html
下面針對一些比較經常使用的場景,舉例說明一下curl的使用。更多的使用方式,請自行閱讀文檔。web
入門級命令cookie
curl www.baidu.com 當增長參數-o(小寫字母)時,至關於wget命令。 curl -o baidu.html www.baidu.com
請求頭部信息app
小寫字母i會顯示包括Http頭部信息和Body信息。 curl -i www.baidu.com 大寫字母I只會顯示Http頭部信息。 curl -I www.baidu.com
舉例:利用頭部請求檢測服務是否正常啓動。curl
if curl -s -I --connect-timeout 5 --max-time 20 --retry-max-time 5 --retry-delay 1 http://127.0.0.1:8082/hello.do | grep -q '200 OK'; then echo "Tomcat maybe OK" else echo "Tomcat maybe FAULT" fi
模擬Http請求工具
get請求,只須要在url後面直接帶參數 curl http://www.baidu.com?a=1&b=2 默認是使用GET的方法請求,也能夠使用-X參數指定HTTP方法。使用-d指定POST的參數。 curl -X POST -d 'a=1&b=2' http://www.baidu.com 當POST的參數是須要進行編碼時,能夠使用--data-urlencode代替-d curl -X POST --data-urlencode 'a=1 &b=2' http://www.baidu.com
模擬帶UserAgent的請求,在處理在些防釣魚的接口狀況比較經常使用。編碼
curl --user-agent 'Mozilla/5.0 (X11; U; Linux i686; zh-CN; rv:1.9.1.2) Gecko/20090803 Fedora/3.5.2-2.fc11 Firefox/3.5.2' www.baidu.com
模擬ContentType的請求url
curl -H 'application/x-www-form-urlencoded;charset=GB2312' www.baidu.com
模擬帶Refferer的請求。在處理在些防釣魚的接口狀況比較經常使用。命令行
curl --referer 'www.163.com' 'www.baidu.com'
帶Cookie的請求code
curl --cookie 'a=1;b=2' www.baidu.com
忽略https證書
#一般報錯curl: (51) SSL: certificate subject name curl -k 'https://www.baidu.com'
顯示Http通信詳情。能夠用於分析請求。
curl -v www.baidu.com