1
POSTリクエストを作成しようとしています。以下は問題なく動作します。bash curl POSTリクエスト:変数を使用する "-d"オプション
# Get expected response
curl http://localhost:9020/xxx/xxxx/ -H Content-type:application/json
-H Accept:application/json -d '{"LED":{
"language":"CHINESE"}, "text":"1928年11月22日"}'
しかし、私は試してみて-d
オプションカールの値を設定している場合、サーバーに要求を送信することはできません。
var="{\"LED\":{ \"language\":\"CHINESE\"}, \"text\":\"1928年11月22日\"}"
# No Response
curl http://localhost:9020/xxx/xxxx/ -H Content-type:application/json
-H Accept:application/json -d $var
後者がなぜ機能しないのか説明できますか?私はさまざまなエスケープ文字を試しましたが、それには運がありません。二重引用符、値がスペース、 に分割し、シェルは 、curl
にそのように複数の追加の引数を解釈しているが、あなたが必要とすることなく
curl http://localhost:9020/xxx/xxxx/ -H Content-type:application/json \
-H Accept:application/json -d "$var"
:
ありがとうございました - 変数を関数に渡すときの解決策としてこれも出てきました。実現しているはずです! – JSB