如何解决验证laravel请求文件中的json对象键
我的 Laravel 请求中有以下 json 类型,我想验证我的 Laravel 请求文件中的 json 对象键。我想验证 title
需要 data json
值。我找到了解决方案,但它用于控制器,我想在我的请求文件中验证它
{"ID":null,"name":"Doe","first-name":"John","age":25,"data":[{"title":"title1","titleval":"title1_val"},{"title":"title2","titleval":"title2_val"}]}
解决方法
public function GetForm(Request $request)
{
return $this->validate(
$request,[
'title' => ['required'],],[
'title.required' => 'title is required,please enter a title',]
);
}
public function store(Request $request)
{
$FormObj = $this->GetForm($request);
$FormObj['title'] = 'stackoveflow'; // custom title
$result = Project::create($FormObj); // Project is a model name
return response()->json([
'success' => true,'message' => 'saved successfully','saved_objects' => $result,200);
}
,
为什么不使用验证器
$data = Validator::make($request->all(),[
'ID' => ['present','numeric'],'name' => ['present','string','min:0'],'first-name' => ['present','min:0','age' => ['present','numeric','max:150'],'data' => ['json'],]);
if ($data->fails()) {
$error_msg = "Validation failed,please reload the page";
return Response::json($data->errors());
}
$json_validation = Validator::make(json_decode($request->input('data')),[
'title' => ['present','min:0']
]);
if ($json_validation->fails()) {
$error_msg = "Json validation failed,please reload the page";
return Response::json($json_validation->errors());
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。