【问题标题】:AWS API Gateway request validation - supported types and formatsAWS API Gateway 请求验证 - 支持的类型和格式
【发布时间】:2022-12-10 07:00:39
【问题描述】:

我一直在试验 AWS API Gateway 并根据 OpenAPI 规范请求验证(参见https://swagger.io/docs/specification/data-models/data-types/#:~:text=OpenAPI%20defines%20the%20following%20built,07%2D21T17%3A32%3A28Z

似乎 AWS 不符合规范,至少对于 date 格式。当我尝试使用模型时

{
  "date": {
        "type": "string",
        "format": "date-time"
  }
}

那么 API Gateway 似乎根本不验证内容(允许任何任意字符串)。

另一方面,date-time 按照 OpenAPI 和 RFC-3339 中的定义正常工作。

是否有任何官方文档或兼容性矩阵?我找不到任何东西。

【问题讨论】:

    标签: aws-api-gateway


    【解决方案1】:

    AWS API Gateway 不支持日期时间格式验证。只要确保enable request validation(默认禁用)

    我在正文中测试了带有日期时间字符串属性的请求:

    • 验证禁用:传递任意字符串时没有错误
    • 启用验证:body {"message": "Invalid request body"} 返回状态为 400 的错误,api 网关日志中有一条消息表明请求正文与模型架构不匹配(日志还包含有关值和请求格式的详细信息)。

    【讨论】:

      猜你喜欢
      • 2020-04-22
      • 1970-01-01
      • 2018-05-08
      • 1970-01-01
      • 2018-07-20
      • 2021-10-25
      • 2016-08-20
      • 2019-01-06
      • 2019-04-04
      相关资源
      最近更新 更多