API GatewayのマッピングテンプレートでBodyのJSONを書き換える
1329 ワード
API GatewayにPOST/PUTされてきたJSONのBody($input
)を、マッピングテンプレートで中身を少しだけ書き換えてバックエンドへProxyしたい時:
#set($body = $input.path('$'))
#set($body.url = "https://example.tld/thingy/$body.id")
$input.json('$')
これだけでurl
属性が#set
で指定したURLに置き換わった状態のJSON文字列が生成される。
#set
での属性置き換え後、最後にJSON文字列化する部分が$body.json('$')
では ない 点に注意。.json('$')
は$input
にしか定義されていない。
すべて参照渡しでまぁJavaScriptみたいなもんだよと言われれば、この使い方も、そんな気もしなくもないが、それにしても、
わかりにくすぎない!?
たったこれだけのことをするのに1日潰れてしまった……。
ref:
Author And Source
この問題について(API GatewayのマッピングテンプレートでBodyのJSONを書き換える), 我々は、より多くの情報をここで見つけました https://qiita.com/makisyu/items/649f2c1945bde57c129f著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .