当我们在 OpenAPI POST 端点的请求正文 (JSON) 中传递额外字段时会发生什么

What happens when we pass extra field in request body(JSON) in a OpenAPI POST endpoint

我正在研究 Swagger 生成的 OpenAPI 规范,我注意到如果我们在 PUT/POST API 端点中传递一些额外的字段,那么服务器不会抛出任何错误,即使它处理所有 valid/necessary 字段。 所以我的疑问是

  1. 在这种情况下服务器应该抛出错误吗?
  2. OpenAPI 标准允许未知字段然后忽略它们吗?

在 Swagger 规范 2.0 中,没有拒绝请求正文中传递的额外字段的选项。服务器将只接受请求定义中允许的那些字段,其他字段将被忽略。 如果你想禁止额外的字段,那么你可以在后端手动处理这些。