それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

curl で get/post/put/delete などメソッドを指定したりJSONをPOSTしたり

curl でHTTPのMethod指定する

GETはすぐ覚えらるけど、GETと同等に使うPOSTはちょっとコツが居る。

curl で POST などの HTTP のメソッドを指定するには、 -X HTTP_METHOD をつけて method を指定する。

curl -X GET
curl -X DELETE
curl -X POST --data 'name=value&id=1'
curl -X PUT   --data 'name=value&id=1'

ファイルを送信する場合にもPOSTをつかう

POSTと ファイル名指定の -F と合わせ技

curl -X POST -F name=@path/to/name
curl -X PUT   -F name=@path/to/name

JSON をPOST送信する場合には

JSONを送る場合は、大抵の場合がPOSTなので、POSTと合わせて、--data で指定する。

curl -X POST --data '{"id":1}' 
curl -X PUT   --data '{"id":1}' 

content-typeを状況により追加で付ける必要がある。

curl -X POST --data '{"id":1}'  -H "Content-Type: application/json"
curl -X PUT   --data '{"id":1}'  -H "Content-Type: application/json"

ちなみに、 --data つけるとPOST

わたしはPOSTやPUTであることを明示することで自分自身への確認としていますが。

--data をつけるだけでPOSTになる・

つまり、次の2つは同じと言える。

curl -X POST --data '{"id":1}' 
curl --data '{"id":1}' 

REST なAPI好き

RESTなAPI好きなんだけど、HTTPメソッドで切り分けるとすると、リクエスト側でメソッド指定するのが不便ですねぇ。

2019-02-06

自分で探すときに検索でマッチしないのでキーワードを追加。