curl linuxとwindowsの違いまとめ

 

コマンドの画像

悩む人
Windows版のcurlでうまくPOSTリクエストが送れない
curlってlinuxとWindowsのものがあるけど使い方の違いがわからない

そんな悩みに答えます。

この記事では、Windows版のcurlのPOSTリクエストの送り方、curlのlinux版とWindows版の違いを紹介します。

この記事を読むことで、linux版とWindows版の使い方の違いがわかるようになります。

本記事の狙い

  • Windows版curlでPOSTリクエストを送ることができる
  • curlのlinux版とWindows版の使い方の違いを理解して使用することができる

GET リクエスト

GETリクエストを送りたい場合は、linux版もWindows版も同じコマンドです。

コマンド使用法

curl <URL>

<URL>はサイトのURLを記述します。

実行例

curl http://localhost:3000

 

 

POSTリクエスト(application/x-www-form-urlencoded)

Bodyのフォーマットが「application/x-www-form-urlencoded」となるPOSTリクエストを送りたい場合は、linux版もWindows版も同じコマンドです。

コマンド使用法

curl -d "<KEY1>=<VALUE1>&<KEY2>=<VALUE2>" <URL>

dオプションを使用して、送るデータ内容全体を「"」(ダブルクォーテーション)で囲みます。
<KEY1>に1つ目のデータのキー名を記述します。
<VALUE1>に1つ目のデータのキー名に対する値を記述します。
データが複数存在する場合は、&を間に挟み、<KEY2>、<VALUE2>を1つ目と同じように記述します。
<URL>はサイトのURLを記述します。

実行例

curl -d "id=1234&name=taro" http://localhost:3000

 

POSTリクエスト(application/json)

Bodyのフォーマットが「application/json」となるPOSTリクエストを送りたい場合は、linux版とWindows版で少し異なるので注意しなければいけません。

コマンド使用法

curl -X POST -H "Content-Type: application/json" -d <データ> <URL>

Xオプションを使用して、メソッドを指定します。(POSTを指定)
Hオプションを使用して、ヘッダを指定します。(「Content-Type: application/json」を指定)
<データ>を指定しますが、ここが注意ポイントです。
linux版とWindows版で異なります。
<URL>はサイトのURLを記述します。

linux版 実行例

curl -X POST -H "Content-Type: application/json" -d '{"id":"1234", "name":"taro"}' http://localhost:3000

linux版の場合は送るデータ内容全体を「'」(シングルクォーテーション)で囲み、JSON内のキー名と値を「"」(ダブルクォーテーション)で囲めばOKです。

 

Windows版 実行例

curl -X POST -H "Content-Type: application/json" -d "{\"id\":\"12345\", \"name\":\"taro\"}" http://localhost:3000

Windows版の場合は送るデータ内容全体を「"」(ダブルクォーテーション)で囲み、JSON内のキー名と値を「\"」(バックスラッシュ+ダブルクォーテーション)で囲めばOKです。

Windows版の場合は、データ内容全体を'(シングルクォーテーション)で囲むことができませんので注意してください。

 

Basic認証

Basic認証のページにリクエストを送る場合は、linux版もWindows版も同じコマンドです。

コマンド使用法

curl -u <ID>:<PASSWORD> <URL>

uオプションを使用します。
<ID>にBasic認証のユーザIDを記述します。
<PASSWORD>にBasic認証のユーザIDに対応するパスワードを記述します
<URL>はサイトのURLを記述します。

実行例

curl -u taro1234:password http://localhost:3000

 

まとめ

  • POSTリクエスト(application/json)は、データの記述方法が異なるので注意!

他にlinux版とWindows版で違う部分を見つけたら更新します。

以上です。
読んでくださった方ありがとうございました。

-ツール
-, , , ,

© 2020 tako-xyz