17/03/30

curlコマンドの使い方


 

APIを作成したのに、いちいちブラウザからテストするのは面倒くさいですよね。
そんな時にcurlコマンドを使えばAPIを叩けます。

curl(カール)コマンドとは

HTTPアクセスにより、データを送信、受信できるコマンドです。
基本的な使い方は以下になります。

$ curl [url]
$ curl http:www.example.net

またパレメータがいらない1文字のオプションはつなげることができます。

進捗

-s オプション
進捗とエラーメッセージを表示しません。
このオプションを指定しないと、標準エラー出力に進捗を表示します。

 

-S オプション
-s を使うとエラーメッセージも表示しなくなってしまいますが、
併用することで、エラーメッセージは表示されます。

HTTP Headerを確認する

-I オプション
Headerのみ取得し、出力することができます。

 

-i オプション
Response, Header, Body を出力できます。

 

-v オプション
-i -I はResponse Headerのみの出力なので、このオプションを指定すると、

RequestのHeaderも見ることが可能になります。

Request Headerに関するオプション

-H 
リクエストヘッダを追加します。
POSTのフォーマットがJSONの場合は -H “Content-Type: application/json” という指定をします。

 

-A
HTTPリクエストヘッダの User-Agent を指定します。
例: -A “Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.50 Safari/537.36”

POST,PUT,DELETE関連

GETメソッドがデフォルトになっています。
他のメソッドを利用するときは
-X メソッド名 と指定します。

 

-d(—data)
POSTで送信するデータを記述できます。
しかし-data はURLエンコードしません。

 

–data-urlencode
curlがURLをエンコードしてくれます。

 

-F 
ファイルを送信することができます。
しかし、-dとの併用はできないので注意が必要です。

 

以下ではlocalhost:3000/apiにPOSTメソッドでjsonのデータを送るサンプルになります。

$ curl -sSv -H "Content-Type:application/json" -X POST -d ‘{“data”: [“hoge”,”fuga”]}’ http://localhost:5000/api

以上です。

 

参考記事
curl コマンド 使い方メモ – Qiita
curl コマンド | コマンドの使い方(Linux) | hydroculのメモ

 

スポンサーリンク

メールアドレスが公開されることはありません。

youya66

だらけとびびり、それとちょっぴりのてきとーさ。

コアラになってだらだらしながら愛されたい。