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