首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >@middy/http- JSON -body-parser无法解析JSON

@middy/http- JSON -body-parser无法解析JSON
EN

Stack Overflow用户
提问于 2020-08-26 22:20:36
回答 1查看 484关注 0票数 0

你好,我想解析一个JSON,所以我使用了middy中间件来解决这个问题。但它不会起作用。需要解析的数据无法处理到dynamodb。我安装了@middy/http-json-body-parser、@middy/http-event-normalizer、@middy/http-error-handler,但仍然无法工作。这是我的代码。

代码语言:javascript
复制
import AWS from 'aws-sdk';
import middy from '@middy/core';
import httpJsonBodyParser from '@middy/http-json-body-parser';
import httpEventNormalizer from '@middy/http-event-normalizer';
import httpErrorHandler from '@middy/http-error-handler';
import createError from 'http-errors';

const nid = require('nid')({HEX:1, length:16})    

const dynamodb = new AWS.DynamoDB.DocumentClient();

async function createAuction(event, context) {
  const { title, description } = event.body;
  const now = new Date();

  const auction = {
    id: nid(),
    title,
    description,
    status: 'OPEN',
    createdAt: now.toISOString(),
  };

  try {
    await dynamodb.put({
      TableName: process.env.AUCTIONS_TABLE_NAME,
      Item: auction,
    }).promise();
  } catch(error) {
    console.error(error);
    throw new createError.InternalServerError(error);
  }

  return {
    statusCode: 201,
    body: JSON.stringify(auction),
  };
}

export const handler = middy(createAuction)
  .use(httpJsonBodyParser())
  .use(httpEventNormalizer())
  .use(httpErrorHandler());

这是result中的截图。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-30 18:44:50

这个问题与dynamodb无关。titledescription不是middy解析的事件,很可能是因为请求不是内容类型的应用程序/json或未正确配置应用程序接口网关。只有这么少的信息是不可能说的,但你应该在async function createAuction(event, context) {之后使用console.log(event),看看它是否包含了你的请求中的有用信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63599697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档