2017-08-30 3 views
0

私はnewmanを使用していくつかのテストを実行していますが、この結果を不和または緩みのいずれかに投稿しようとしています。ここフォーマット済みの表をカール本体に送信

は私がやろうとしています何私のコンソールの出力(Iは、書式設定を制御することはできません、それだけでこの方法を印刷し...)

┌─────────────────────────┬──────────┬──────────┐ 
│       │ executed │ failed │ 
├─────────────────────────┼──────────┼──────────┤ 
│    iterations │  2 │  0 │ 
├─────────────────────────┼──────────┼──────────┤ 
│    requests │  52 │  0 │ 
├─────────────────────────┼──────────┼──────────┤ 
│   test-scripts │  52 │  0 │ 
├─────────────────────────┼──────────┼──────────┤ 
│  prerequest-scripts │  0 │  0 │ 
├─────────────────────────┼──────────┼──────────┤ 
│    assertions │  1813 │  36 │ 
├─────────────────────────┴──────────┴──────────┤ 
│ total run duration: 10.1s      │ 
├───────────────────────────────────────────────┤ 
│ total data received: 146KB (approx)   │ 
├───────────────────────────────────────────────┤ 
│ average response time: 157ms     │ 
└───────────────────────────────────────────────┘ 

です:

# call newman 
local output=$(newman run mycollection.postman_collection.json) 

# output verbose file 
echo "$output" 

curl -i -H "Content-Type: application/json; charset=UTF-8" -X POST -d '{"content":"```'"$output"'```"}' https://discordapp.com/api/webhooks/blablabla 

echo "$output"は、コンソール上の表を印刷しますが、私が取得:

{「コード」:50006、「メッセージ」:「空のメッセージを送信できません」}

しかし、私は

"コンテンツ" 交換する場合:期待どおりに動作します

"これは文字列です"。最初のステップは、第二は、jq(またはAを使用することです

... -d "{\"content\": \"$output\"}" ... 

に引用を簡素化することですどのように私はカールの体に、この出力テーブルを送ることができます

答えて

1

enter image description here

同様のJSONツール)を使用してJSONを正しく生成することができます(つまり、$outputという結果のものはすべて正しく引用されます)。

... -d "$(jq --arg data "$output" '{content: $data}')" ... 
関連する問題