私はSwift 3でAWG APIGateway、Lambda、RDSを使用してモバイルアプリケーションを作成しています。インテグレーションリクエスト(AWS APIGateway)のリクエストパスをエスケープする方法
たち-東-1:POSTメソッドでは、私のような体の要素の一つに一意の識別子を渡しているXXXXXXXX-55b0-4917-82e3-85b3b093fa9c
しかし、中にGETメソッドでは、リクエストパスを使用してこのユーザーレコードを取得し、この値を渡しています。しかし、私はそれが要求パスとで結果だから、それはエンコードされたばかりだ推測している:
たち-東-1%3Axxxxxxxx-55b0-4917-82e3-85b3b093fa9c
それはラムダに当たったら、このよう(と私RDS)では、コロンのエスケープのためにレコードが見つかりません。このように、統合要求テンプレートでこの値を "エスケープ"できますか?
私のようなテンプレートを試してみた:動作しません。しかし
#set($inputRoot = $input.path('$'))
{
"user_identity" : "$util.decodeURIComponent($input.params('useridentity'))"
}
、。私はログの中で以下を取得します:
Thu Aug 17 02:32:47 UTC 2017 : HTTP Method: GET, Resource Path: /user/us-east-1%3Axxxxxxxx-55b0-4917-82e3-85b3b093fa9c
Thu Aug 17 02:32:47 UTC 2017 : Endpoint request body after transformations: {
"user_identity" : ""
}
私もdecodeURIを使ってみましたが、それは私に同じ結果をもたらします。私はここで何が欠けていますか?