1. 程式人生 > >CURL 介面測試及一些用法

CURL 介面測試及一些用法

1、在Linux中curl是一個利用URL規則在命令列下工作的檔案傳輸工具,http請求指的是客戶端向服務端的請求訊息,http請求主要分為get或post請求兩種,在linux測試環境中,可以通過curl或wget命令和模擬http請求。
2、 基本用法: 基本用法:

# curl http://www.linux.com

3、通過get方式訪問介面:

curl -H "Referer: www.example.com" -H "User-Agent: Custom-User-Agent" http://www.baidu.com

4、通過POST方式訪問介面:

curl -d “key=value&key=value” “http://www.baidu.com”

也可以傳送json格式化請求,-H指的是請求的頭資訊,多個頭資訊加多個-H即可,-d用於指定的傳送的資料,-X用於指定請求的方式

curl -H "Content-type: application/json" -X POST -d '{"username":"lisi","password":"123"}' http://127.0.0.1:8080/user/getUser

`

1、通過curl獲取頁面的內容
當我們不加任何的選項使用curl時,預設會發送GET請求來獲取連結內容輸出

curl http://www.baidu.com

2、顯示http頭資訊,-I選項是隻顯示http頭資訊,-i則同時顯示http頭資訊和檔案內容

curl -I http://www.baidu.com
curl -i http://www.baidu.com

3、將訪問的資源儲存到本地,-o:結果會儲存到命令列中提供的檔名,-O:檔名會被用作輸出儲存的檔名,注意的是使用-O時,確保連結的末尾包含檔名,也可以同時下載多個檔案,加上多個即可

curl -o info.html http://www.baodu.com/info.html
curl -O http://www.index.com/info.html
下載多個============================================
curl -O http://www.baidu.com/info.html -0 http://baidu.com/info2.html
curl -o info1.html http://www.baidu.com/info.html -o info2.html http://www.baidu.com/info2.html

4、使用-L跟隨重定向,有些網站,訪問某個資源會重定向到另外一個網頁,可以使用-L進行跟隨

curl -L http://baidu.com

5、使用-A自定義使用者代理,可以進行偽裝成某個瀏覽器對網頁進行請求

curl -A "Mozilla/5.0 (Android; Mobile; rv:35.0) Gecko/35.0 Firefox/35.0" http://www.baidu.com

6、使用-H自定義header頭資訊

curl -H "Content-type: application/json" -H "Content-type: application/json" -X POST -d '{"username":"lisi","password":"123"}' http://127.0.0.1:8080/user/getUser

7、使用-c儲存cookie,使用-b儲存起來的cookie,-c後面跟上要儲存的檔名,使用-b從檔案中讀取cookie

curl -c "cookie-name" http://www.baidu.com
curl -b "cookie-name" http://www.baidu.com

8、使用-d傳送POST請求,-d用於指定傳送的資料,-X用於指定傳送資料的方式,預設情況下,使用-d,省略-x,則預設為POST方式,可以強制使用GET方式,也也可以從檔名讀取資料進行訪問

curl -d "userName=lisi&passwd=123" -X POST http://www.baidu.com
curl -d "@somedata.txt" http://www.baidu.com