Amazon web services 响应包含循环引用,无法在AWS中序列化为JSON

Amazon web services 响应包含循环引用,无法在AWS中序列化为JSON,amazon-web-services,aws-api-gateway,claudia.js,Amazon Web Services,Aws Api Gateway,Claudia.js,我正在用AWS开发一个API。我正在使用Claudia API Builder const AWS = require('aws-sdk') const docClient = new AWS.DynamoDB.DocumentClient() const createOrder = async (order) => { if(!order || !order.id || !order.address ) throw new Error ('To order a piz

我正在用AWS开发一个API。我正在使用Claudia API Builder

const AWS = require('aws-sdk')
const docClient = new AWS.DynamoDB.DocumentClient()

const createOrder = async (order) => {
    if(!order || !order.id || !order.address ) 
    throw new Error ('To order a pizza you must send a id and the adress of the customer')

    return await docClient.put({
        TableName: 'pizza-order',
        Item: {
            orderId : order.id,
            pizza: order.pizza,
            address: order.address,
            status: 'pending',
        }
    })
}

module.exports = createOrder;

然后我用邮递员发送请求

{
    "pizza": 1,
    "address": "Bangladesh",
    "id": 2
}
但它会返回如下错误:

{“errorMessage”:“响应包含循环引用,无法序列化为JSON”}


有解决办法吗

您必须添加
.promise
方法:

return await docClient.put({
    TableName: 'pizza-order',
    Item: {
        orderId : order.id,
        pizza: order.pizza,
        address: order.address,
        status: 'pending',
    }
}).promise().   <== here
返回等待docClient.put({
表名:“比萨饼订单”,
项目:{
orderId:order.id,
比萨饼:点比萨饼,
地址:order.address,
状态:“待定”,
}

}).答应。Thanx用于解决方案。我正在读一本关于aws的书,它使用claudia API builder。但我觉得山姆更有用。你对搬到山姆去有什么想法?同时也对理论上的评论感到抱歉。