LoginSignup
23
26

More than 5 years have passed since last update.

cURLについてまとめておく

Posted at

RESTなAPIなんか作っていると、いちいちテストするのでブラウザとか使うのはとっても面倒。そこで、コマンドのcurlがとても便利なんです。

オプションの-vと-bと-cに-dを組合せて、アクセスをするとテストなどで使えます。

本家をみてびっくりしたけど、実はかなり色々できるコマンドだった。恐るべし。そして本名が「cURL」と初めて知った。

自動で色々やりたい場合は、こちらが参考になる。(もちフルEnglish)
http://curl.haxx.se/docs/httpscripting.html

URLで便利なファイル名の展開

使い方はこんな感じ。

curl "http://hogehoge.com/[1-5].jpg"

以下、展開についてのパターン

[1-5].jpg

1.jpg, 2.jpg・・・と連続取得

{1,3,5}.jpg

1.jpg, 3.jpg・・・と指定したもので取得

{a,b}{1,2}.jpg

a1.jpg, a2.jpg, b1.jpgと組合せてくれる

オプションについて

ファイルへ出力
-O URL

ファイル名指定の出力
-o ファイル名 URL

リダイレクトに追随
-L URL

cookieの保存
-c cookie.txt

cookieの送信
-b cookie.txt

httpヘッダーの追加・変更
-H "key: value"

フォーム送信
-d name=value
複数送りたい場合は、上記を繰り返す

ヘッダー取得
-I URL

サーバとのやり取りを表示する
-v URL

使用例

Redmineのチケットを更新している例
http://www.r-labs.org/projects/r-labs/wiki/Rest_api_with_curl

$ curl -v -H "Content-Type: application/json" -X PUT --data "@388.json" -u login:password http://redmine/issues/388.json

以下のファイルを作っておく

388.json
{
  "issue": {
    "subject": "subject123",
    "notes": "Changing the subject" 
  }
}

ネタ元URL

本家
http://curl.haxx.se/

WindowsAzureにてRestAPIを叩くのに、cURLを使っている例も発見。
http://troushoo.blog.fc2.com/blog-entry-38.html

23
26
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
23
26