Curlを使ってRESTful PUT(またはDELETE)メソッドをテストするにはどうすればいいですか?
必要なHTTP動詞に-X
フラグを使用します。
curl -X PUT -d arg=val -d arg2=val2 localhost:8080
この例では、PUTリクエストで引数を提供するために-d
フラグも使用します。
Chrome Storeから_ postman _アプリを使用できます。
単一行では、curlコマンドは次のようになります。
a)フォームデータを送信する場合
curl -X PUT -H "Content-Type: multipart/form-data;" -F "key1=val1" "YOUR_URI"
b)生データをjsonとして送信する場合
curl -X PUT -H "Content-Type: application/json" -d '{"key1":"value"}' "YOUR_URI"
c)POST要求でファイルを送信する場合
curl -X POST "YOUR_URI" -F 'file=@/file-path.csv'
他のフォーマットのリクエストやJava、PHPのような異なるクライアントのために、あなたは以下のPOSTMAN /コメントをチェックすることができます。
Martin C. Martinのコメントに続くPUTの例:
curl -T filename.txt http://www.example.com/dir/
-T
(--upload-file
と同じ)を指定した場合、curlはHTTPにPUTを使用します。
curl -X PUT -d 'new_value' URL_PATH/key
どこで、
X - 要求コマンドに使用されるオプション
d - リモートURLにデータを置くために使用されるオプション
URL_PATH - リモートURL
new_value - サーバのキーに設定したい値
私はこのスレッドに遅れていますが、私も同様の要件を抱えていました。私のスクリプトはcurlのリクエストを動的に構築していたので、GET、POST、そしてPUTに渡って同様のコマンド構造を望んでいました。
これは私のために働くものです
_ put _ / requestの場合:
curl --request PUT --url http://localhost:8080/put --header 'content-type: application/x-www-form-urlencoded' --data 'bar=baz&foo=foo1'
_ post _ / requestの場合:
curl --request POST --url http://localhost:8080/post --header 'content-type: application/x-www-form-urlencoded' --data 'bar=baz&foo=foo1'
_ get _ / requestの場合:
curl --request GET --url 'http://localhost:8080/get?foo=bar&foz=baz'