如何根据 Guzzle 模型结构验证响应数据



我一直在使用Guzzle模型,并取得了一些成功。响应数据未序列化就很好,我可以使用原始 JSON 响应中没有的其他值来扩充数据。

但是,我的所有模型都缺少其验证结构。当我返回错误类型的意外键或值时,我没有收到任何验证错误。要么我做错了什么,要么我误解了应该发生的事情。

这是我以测试用例形式编写的示例代码:
https://gist.github.com/timwhitlock/8511971

特别要注意最后一个断言。缺少验证错误可能是由缺少结构来解释的。但为什么不见了呢?

Guzzle的作者通过Gist评论回答了我的问题。https://gist.github.com/timwhitlock/8511971#comment-990206

默认情况下,允许响应模型在响应中选取其他(未声明)属性,但您可以将additionalProperties设置为 false 以防止它。

默认情况下,用于生成响应模型的原始模式不存在,因为大多数用例不需要它,并且当存在时,它会使调试更加混乱。

最新更新