以下是我要验证的内容:
[编辑后删除 - 请查看以下编辑日期以后编辑]
这应该会失败,因为这里唯一可以接受的项目是“商家” - 但验证不会失败。它过去了。
我无法解决这个问题。我已经尝试了一些方法,它让我无处可去。
这里有什么问题?
----------------------编辑--------------------- -------
我被要求提供更多代码。这是我需要验证的有效负载。它在 PHP 。
$payload = (object) [];
$payload->query_string = (object) [];
$payload->query_string->include = (object) [
"merchant_channel",
"merchant",
];
以下是运行验证器的行:
$this->validator->validate(
$payload,
['$ref' => 'file://Schemas/the-json-file.json']
);
这是我正在运行验证器的文件:
{
"type": "object",
"properties": {
"query_string": {
"type": "object",
"properties": {
"include": {
"type": "object",
"properties": {
"values": {
"type": "array",
"items": {
"allOf": [
{
"type": "string",
"enum": [
"language"
]
}
]
}
}
}
}
}
}
}
}
我正在使用这个包:
https://github.com/justinrainbow/json-schema
这个包很简单......
针对给定模式验证JSON结构的PHP实现。
您不应该知道PHP能够回答特定于JSON模式验证的原始问题!
请不要评论/回答说“你错过了一个引用”或“你错过了一个结束括号”。显然我已经来削减这些代码,所以我可以在Stack Overflow上发布它。
答案 0 :(得分:0)
它没有开始和结束花括号。