JSONファイルをURLに投稿するためのシェルスクリプトを作成しています。シェルスクリプトを使用してURLにJSONファイルを投稿する
ヘッダーは次のとおりです。
Content-Type: application/json
Accept: application/json
Account-Number: xxxxxxxx
Authorization: Basic eW91cl91c2VyX25hbWU6cGFzc3dvcmQ=
上記のJSON文字列が.JSONファイルに保存され、私のcurlコマンドは、それを処理し、所望の応答を取得する必要があります。次のコマンドを使用しますが、正常に処理されません。
curl -H "Content-Type: application/json" -X POST -d "[email protected]$f" https://abcdef.com/test/example/v1/
$ fにはJSONファイル名があります。
私も次のような質問があります。
- は私のヘッダーとJSON文字列が同じJSONファイルにあるべきか?ヘッダーが異なるファイルに存在する場合、その拡張子は何ですか? curlコマンドを使用してそれをどのように処理するのですか?
- I」は、{などの特殊文字のために行う必要があり、特定の取り扱い,:などはありますか?
FYI、これは動作しません。 '-d data = @ file'でJSONをこのように投稿することはできません。 – randomir
かなり正しいです。編集しました –
あなたの回答の皆さんありがとうございました。私は - データ - バイナリオプションを試して、ヘッダーの内容をすべて入れましたが、 "エラー": "メッセージ": "要求が認証に失敗しました"、 "error_code": "API_001"、 "error_name" : "Unauthenticated request" - JSON形式です。あなたは助けてもらえますか? curl --data-binary "@ $ filename" -H "Content-Type:application/json" -H "Accept:application/json" -H "アカウント番号:3283950684" -H "認証:Basic OTFiNDA0MjctYzJhNi00MGVmLTgzMzgtOWIzY2JjODE2N2E1OnhjNGJkZjNmMjVmMw == "-X POST https://digitalapi.auspost.com.au/test/ –