Sunday, November 25, 2012

每次用每次忘XD 好好來寫個cURL筆記

進入web service的世界也好一陣子啦!
這篇是要來紀錄一下cURL指令
測api超方便搭
有整理過才會加深記憶(奇怪不就那幾個怎麼會一直忘 囧)啊XD 不然每次用都要man感覺超傻的


(1) GET
curl [URL...]相當簡單
來個例子: curl http://www.google.com.tw

(2) POST
curl -X POST [URL...]
-X(--request)是用來指定跟server溝通時使用的http method, 如果沒指定就是GET囉!
另外POST通常都會需要指定request body
-d(--data/--data-binary/--data-urlencode) [data]
body的內容可以直接給,
curl -X POST -d "this is the test content" http://this.is.an.example.com/post/
或者是用@加檔名指定,
curl -X POST -d @foo.jpg http://this.is.an.example.com/post/
另外還可以用form的方式-F(--form)或是-T(--upload-file)給檔名

(3) 其他常用option
1. -H(--header) 指定header, 如果是多個header, 需要-H "X-TestHeader1: 111" -H "X-MyHeader2: 222"
2. -i(--include) 會顯示response header
3. -v(--verbose) 可以看到request header, request被處理的過程等等, 通常是debug時用
4. -u(--user) [user:password] 指定username和password


ref: cURL man page