提问人:Naveen Santhanavel 提问时间:8/9/2023 最后编辑:Brian Tompsett - 汤莱恩Naveen Santhanavel 更新时间:8/10/2023 访问量:65
在解码原始JSON之前如何进行验证?
How to perform validation before decoding the raw JSON?
问:
我们正在用 PHP (Hacklang) 构建一个 API 框架,并将使用 OPIS 中的 json-schema 来实现对请求正文中 JSON 输入的验证。
OWASP建议对数值参数的最小值和最大值范围检查进行验证 - 链接
但看起来 json-schema 无法对 JSON 编码的字符串(API 的原始输入)执行验证 - https://opis.io/json-schema/2.x/php-validator.html
通过首先反序列化输入,我认为我们失去了模式验证提供的许多好处。例如,如果验证架构中数组字段的 maxItems 为 1,但客户端提供了 10 亿个项目,我们将反序列化所有内容,只是为了稍后抛出异常。
有没有办法在没有反序列化原始输入的情况下执行验证?开源 API 框架如何处理这个问题?
答: 暂无答案
评论
json_decode()