Laravel 5.5 JSON验证规则失败

时间:2018-08-12 09:41:21

标签: json laravel api laravel-5 laravel-5.5

我将以下JSON发布到了我的laravel 5.5应用程序中

{
    "code": "asdfsadf",
    "amount": "1000"
}

我的验证规则如下:

 $validator = Validator::make($request->all(), [
            'amount' => 'required|numeric|json',
            'code' => 'required|alpha_num|json',
        ]);

和数量字段始终通过JSON验证,但代码字段始终在传递除int值以外的任何内容时通过。我在网络上找不到任何解决方案。

1 个答案:

答案 0 :(得分:1)

没有json验证规则来验证laravel上的json。您必须为此构建自己的自定义验证器。

如下所示:

$data = json_decode($request->all(), true);
$rules = [
    'amount' => 'required|numberic',  
    'code' => 'required|alpha_num'
];

$validator = Validator::make($data, $rules);

if ($validator->passes()) {
    // ok validation
} else {
   //handle errors
    dd($validator->errors()->all());
}
相关问题