curl是一種用來測試應用協議的命令列工具,支援包括http、ftp、smtp和telnet等在內的多種協議,並且提供了**、認證和cookies等豐富的特性。
curl的功能非常強大,這裡簡單記錄一下自己在後台開發時涉及的用法(http協議)。
1、最基本的用法
直接在curl後面接url,curl會把網頁的html原始碼直接列印到stdout。
curl www.example.com
2、顯示http響應的頭部資訊加上-i引數後,curl將會在輸出html原始碼之前將content-type、location、set-cookie等頭部資訊列印出來。
curl -i www.example.com
如果想要檢視http請求/響應過程中的所有頭部資訊,那麼可以改為-v引數。
curl -v www.example.com
3、指定http請求方法後台api往往涉及get、post、delete等多種請求方法,但是curl的預設請求方法為get。這時可以通過-x引數來修改預設請求方法。
curl -x post www.example.com
curl -x delete www.example.com
4、傳送表單資料(1)get方法:直接把資料附在url中
curl www.example.com/add?title=***&text=yyy
(2)post方法:使用--data引數
curl -x post --data "title=***&text=yyy" www.example.com/add
注意:json標準規定,json中的字串要使用雙引號而非單引號。所以,下面的命令對於某些後台api可能無法正常工作。
5、傳送帶有登入態的請求
有一些api只對具有登入態的請求開放,而curl是支援cookies的,因此可以實現帶登入態的請求。具體做法為:
首先,在傳送登入請求時通過-c引數指定乙個檔案,用來存放從伺服器返回的包含sessions資訊的cookies。
curl -x post --data 'username=admin&password=default' -c sessions.txt www.example.com/login
此後,每次傳送請求時都通過-b引數指定之前用來儲存cookies的檔案
curl -x post --data 'title=***&text=yyy' -b sessions.txt www.example.com/add
參考:
阮一峰-curl**開發指南
curl manual
後台API介面規範
最新公司新的專案,使用spring boot,cloud,服務之間使用rest api進行呼叫,所有使用了restful 風格的介面 responsebody public objectrestresponse getbyregionid pathvariable regionid string r...
使用curl測試rails rest
以下是在debian下操作完成的.1.首先安裝curl aptitude install curl 2.開始測試 查詢 get curl x get orcurl x get id 新增 post curl x post h content type text xml d xml content 修...
curl命令測試介面
最近要作為服務端上線兩個介面,供資料資產專案呼叫,由於介面沒有增刪改操作,只有查詢操作,也沒有機密資訊,呼叫對專案沒有影響,怎麼能在上線後,測試一下介面是否能正常返回,於是我想起了curl命令!謹記,一般生產上不能這樣操作!帶引數的post請求 如,post介面請求的鏈結為 post入參為 轉為cu...