如何获取AWS API Gateway以针对模型验证JSON Body

时间:2017-05-18 15:22:08

标签: api amazon-web-services aws-api-gateway jsonschema

新发布的“x-amazon-apigateway-request-validator”(我相信4月份)应该可以针对API的POST / PUT有效负载运行JSON模式验证。

我现在尝试以几种不同的方式实现这一点,但我无法让它发挥作用...... 我添加了验证器:

"x-amazon-apigateway-request-validators": {
  "ValidateBody": {
    "validateRequestParameters": false,
    "validateRequestBody": true
  },
  "ValidateHeaders": {
    "validateRequestParameters": true,
    "validateRequestBody": false
  }

}

对于任何methind,我会寻找特定的标题,所以我也在Swagger的“根”中有参数:

"x-amazon-apigateway-request-validator": "ValidateHeaders"

在POST中,我有一个x-amazon-apigateway-request-validator: ValidateBody,然后是一个带有JSON模式的模型,其中有几个元素是required

我可以发布任何内容,只要它是JSON ...没有对JSON模式进行验证...

我错过了什么?

1 个答案:

答案 0 :(得分:2)

它正在工作! 部署和新代码的实际使用之间存在时间差,即使我似乎没有进行任何缓存。

出去吃午饭,回到工作的解决方案!

{
  "message": "Invalid request body"
}

能够修改响应消息会很高兴......