Записать данные в DynamoDB с помощью составного первичного ключа - PullRequest
0 голосов
/ 15 февраля 2020

У меня проблемы с записью данных с использованием составного первичного ключа в DynamoDB. Я создал таблицу DynamoDB под названием TestTable с первичным ключом и ключом сортировки. Вот моя AWS лямбда-функция:

var AWS = require('aws-sdk'),
myDocumentClient = new AWS.DynamoDB.DocumentClient();
exports.handler = function(event, context, callback) {
var params ={
    TableName: 'TestTable',
    Item: {
    'Username': event.Username, \\ Primary Key
    'ProductID' : event.ProductID, \\ Sort Key
    'Price': event.Price
  }
};

const response = {
  statusCode: 200,
  headers: {
    'Access-Control-Allow-Origin': '*',
    'Access-Control-Allow-Credentials': true,
  },
  body: JSON.stringify('Item Added'),
};

myDocumentClient.put(params, function(err, data) {
  if (err) {
    console.log("Error", err);
  } else {
    console.log("Success", data);
  }
}); 
}

Проблема заключается в том, что при тестировании на Postman с этими данными

{
 "Username": "Kane",
 "ProductID": 34,
 "Price": 43,
}

работает нормально. Однако когда я запустил приложение React с этим кодом

const  handleSubmit = async event => {
    event.preventDefault();
    await axios.post('API-URL',
        {Username:`Hii`, ProductID:`${id}`, Price:`${price}`} \\ Problem is here
    );
 }

, оно не записало данные в таблицу. Я думаю, что проблема в этой строке

{Username:`Hii`, ProductID:`${id}`, Price:`${price}`}

Может кто-нибудь помочь мне? Я пытался понять это около пяти часов, но ничего не получил. Большое вам спасибо.

...