0

ダイナモからレコードを挿入して取得するためにdynamodbを使って作業しています。それが正常に動作デシベル私はダイナモにレコードを挿入するときが、私は任意の項目を一覧表示するか、いずれかのアイテムを取得しようとすると、それは返すDynamoDBのから何の結果は、レコードの取得にaws api gatewayのaws proxyを使用してアイテムフォームのdynamodbを取得できませんか?

を見つけないことに注意してください

  1. は、apiゲートウェイと信頼関係を持つiamロールを作成しました。 AmazonAPIGatewayInvokeFullAccess、AmazonDynamoDBFullAccess、APIGatewayAWSProxyExecPolicy、AmazonAPIGatewayAdministratorのポリシーを管理しています。

  2. フィールドIDと名前を持つempという名前のテーブルが作成されました。

  3. リソース/ employeeを持つempという名前のapiゲートウェイが作成されました。メソッドpostとgetを持っています。挿入のための投稿と表示レコードの取得。 URLのクエリ文字列パラメータでgetメソッド選択AWSサービスプロキシの

  4. enter image description here

  5. 、その後は、メソッドの要求にIDを追加しました。

  6. さらに、統合要求> URLクエリ文字列パラメータ> IDおよびmethod.request.querystring.idが追加されました。

    統合要求に
  7. >ボディマッピングテンプレートは、アプリケーション/ JSON、次にJSONコードを追加

    { "テーブル名": "EMP"、 "KeyConditionExpression": "ID = V1"、 「ExpressionAttributeValuesを「:{ ":V1":{ "S": "$ input.params( 'ID')" } }私はそれをテストしたとき } は、それは助けてください、なぜ私が理解することはできません何も結果を返しません。

+0

'emp'テーブルにサンプルデータがありますか? – notionquest

答えて

2

私はこれに関する専門家ではありませんが、2つの問題があります。

DynamoDBサービスのプロキシ設定では、DynamoDB APIへのリクエストをPOSTするときにHTTPメソッドをPOSTにする必要があり、GetItemメソッドを使用するという事実とは関係ありません。

第2に、ボディマッピングテンプレートでは、DynamoDB Query APIでは使用されているが、GetItemでは使用されていないKeyconditionExpressionが使用されます。 GetItemには、次のようにKeyが指定されている必要があります。http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_GetItem.html#API_GetItem_Examples

関連する問題