JSON・エンコーディング関数
JSONとBase64を扱う関数群です。
| 関数 | 説明 |
|---|---|
toJSON(v) | 値をインデント付きJSON文字列に変換 |
fromJSON(s) | JSON文字列を解析 |
toBase64(s) | Base64にエンコード |
fromBase64(s) | Base64をデコード |
関数名はキャメルケースです。
tojsonやbase64という名前の関数はありません。
with:
body: "{{toJSON(outputs.setup.user)}}"
outputs:
version: "{{fromJSON(res.body).version}}"Probe固有の parse_json、encode_base64、decode_base64 は同じ用途に使えます。
こちらは引数の型と長さを検証し、Probeのエラーメッセージを返します。
JSONの比較には match_json と diff_json があります。
test: match_json(res.body, vars.expected)
echo: "{{diff_json(res.body, vars.expected)}}"JSONPathを扱う関数はありません。 値の取り出しはフィールドアクセスと配列・マップ関数を組み合わせます。
outputs:
first_email: "{{res.body.users[0].email}}"
active_names: "{{map(filter(res.body.users, #.active), #.name)}}"更新日時