我一直在使用Guzzle models取得了一些成功。响应数据是非正常的,我可以使用原始JSON响应中没有的其他值来扩充数据。
但是,我的所有模型都缺少其验证结构。当我返回错误类型的意外键或值时,我没有得到任何验证错误。无论是我做错了什么还是我误解了应该发生的事情。
以下是测试用例形式的示例代码:
https://gist.github.com/timwhitlock/8511971
特别注意最后一个断言。错误的结构可能解释了缺少验证错误。但为什么它会丢失?
答案 0 :(得分:1)
Guzzle的作者通过Gist评论回答了我的问题。 https://gist.github.com/timwhitlock/8511971#comment-990206
默认情况下,响应模型可以在响应中获取其他(未声明的)属性,但您可以将additionalProperties
设置为false
以阻止它。
默认情况下,用于生成响应模型的原始模式不存在,因为大多数用例不需要它,并且当存在时调试更加混乱。