如何在Symfony项目中使用Json Schema为所有输入创建基本要求。例如,我有多个模式,但"type": "string"
的所有属性都不应接受HTML标记作为输入?可能应该有一些正则表达式规则。但是,我需要找到方法,使其成为验证方法中所有输入的基本验证规则,而不更改每个模式文件
public function check($jsonData, $schemaFilePath){
$path = $this->fileLocator->locate($schemaFilePath);
$schema = (object)['$ref' => 'file://' . $path];
$this->validator->validate($jsonData, $schema);
if($this->validator->isValid()){
return null;
}else{
return $this->validator->getErrors();
}
}
希望我的问题很明确。如果我可以添加更多详细信息,请告诉我
答案 0 :(得分:0)
这里有两个问题:
我认为将此验证移至应用程序级别并使用适当的HTML解析器而不是正则表达式会更好。
答案 1 :(得分:0)
我建议使用JSON架构Bundle(第三方),它可能带有验证器,如: