
cURLは、サポートされているプロトコルの1つを使用してリモートサーバーとの間でデータを転送するためのコマンドラインユーティリティです。 macOSおよびほとんどのLinuxディストリビューションにデフォルトでインストールされます。
cURLは、APIのテスト、応答ヘッダーの表示、HTTPリクエストの作成に開発者が使用します。
この記事では、cURLを使用してPOSTリクエストを作成する方法について説明します。 HTTP POSTメソッドは、リモートサーバーにデータを送信するために使用されます。
POSTリクエストの作成#
curl
の一般的な形式 POSTリクエストを行うためのコマンドは次のとおりです。
curl -X POST [options] [URL]
-X
オプションは、リモートサーバーとの通信時に使用されるHTTP要求メソッドを指定します。 リクエスト本文のタイプは、Content-Typeheaderによって示されます。
通常、POSTリクエストはHTMLフォームを介して送信されます。フォームに送信されるデータは通常、multipart/form-data
のいずれかにエンコードされます またはapplication/x-www-form-urlencoded
コンテンツタイプ。
POSTリクエストを作成するには、-F
を使用します オプションの後にfield=value
が続きます ペア。次の例は、「name」フィールドと「email」フィールドを持つフォームにPOSTリクエストを送信する方法を示しています。
curl -X POST -F 'name=linuxize' -F '[email protected]' https://example.com/contact.php
-F
の場合 オプションが使用されている場合、curl
multipart/form-data
を使用してデータを送信します コンテンツタイプ。
POSTリクエストを行う別の方法は、-d
を使用することです。 オプション。これにより、curl
が発生します application/x-www-form-urlencoded
を使用してデータを送信する コンテンツタイプ。
curl -X POST -d 'name=linuxize' -d '[email protected]' https://example.com/contact.php
-d
の場合 オプションは複数回使用され、&
を使用してデータをマージできます 記号:
curl -X POST -d 'name=linuxize&[email protected]' https://example.com/contact.php
特定のヘッダーまたはContent-Typeを設定するには、-H
を使用します オプション。次のコマンドは、POSTリクエストタイプをapplication/json
に設定します JSONオブジェクトを送信します:
curl -X POST -H "Content-Type: application/json" \
-d '{"name": "linuxize", "email": "[email protected]"}' \
https://example/contact
ファイルのアップロード#
curl
を使用してファイルをPOSTするには 、@
を追加するだけです ファイルの場所の前の記号。ファイルには、アーカイブ、画像、ドキュメントなどがあります。
curl -X POST -F 'image=@/home/user/Pictures/wallpaper.jpg' http://example.com/upload
結論#
curl
の使用方法を説明しました POSTリクエストを作成します。 curl
の詳細については 、Curlドキュメントページにアクセスしてください。
ご質問やご意見がございましたら、お気軽にコメントをお寄せください。