Laravel框架FormRequest中重寫(xiě)錯(cuò)誤處理的方法
laravel 框架中默認(rèn)的validate驗(yàn)證,在處理錯(cuò)誤的時(shí)候,默認(rèn)是返回上一頁(yè),當(dāng)為ajax的時(shí)候才會(huì)返回Json。如果我們要一直返回Json的話,那么需要重寫(xiě)錯(cuò)誤處理
如下:在Requests目錄只用 新建BaseRequest類

代碼如下
<?php
/**
* @文件名稱: BaseRequest.php.
* @author: daisc
* @email: jiumengfadian@live.com
* @Date: 2019/1/8
*/
namespace App\Http\Requests\Front;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Http\Exceptions\HttpResponseException;
class BaseRequest extends FormRequest
{
public function failedValidation($validator)
{
$error= $validator->errors()->all();
// $error = $validator;
throw new HttpResponseException(response()->json(['code'=>1,'message'=>$error[0]]));
}
}
重寫(xiě)了failedValidation方法,將拋出錯(cuò)誤處理為了json格式的。
然后在自定義的處理驗(yàn)證類中,繼承該類就行了,
如:RegisterForm中
<?php
namespace App\Http\Requests\Front;
class RegisterForm extends BaseRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'phone'=>'required|regex:"^1\d{10}"',
'email' => 'required|email',
'password'=>'required|confirmed'
];
}
public function messages()
{
return [
'phone.required'=>'手機(jī)號(hào)不能為空',
'phone.regex'=>'請(qǐng)輸入正確的手機(jī)號(hào)',
];
}
}
當(dāng)我們?cè)诳刂破髦姓{(diào)用RegisterForm的時(shí)候,就回返回Json格式的錯(cuò)誤信息。
不分是否是AJAX

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Laravel中使用FormRequest進(jìn)行表單驗(yàn)證方法及問(wèn)題匯總
- Laravel框架表單驗(yàn)證詳解
- Laravel 5框架學(xué)習(xí)之表單驗(yàn)證
- Laravel 4 初級(jí)教程之Pages、表單驗(yàn)證
- laravel5.2表單驗(yàn)證,并顯示錯(cuò)誤信息的實(shí)例
- Laravel框架表單驗(yàn)證格式化輸出的方法
- Laravel框架表單驗(yàn)證操作實(shí)例分析
- Laravel5.1 框架表單驗(yàn)證操作實(shí)例詳解
- laravel框架使用FormRequest進(jìn)行表單驗(yàn)證,驗(yàn)證異常返回JSON操作示例
相關(guān)文章
PHP指定截取字符串中的中英文或數(shù)字字符的實(shí)例分享
這篇文章主要介紹了PHP指定截取字符串中的中英文或數(shù)字字符的實(shí)例,還附帶介紹了過(guò)濾字符串中空格的方法,需要的朋友可以參考下2016-03-03
實(shí)例介紹PHP中zip_open()函數(shù)用法
在本篇內(nèi)容里小編給大家分享了關(guān)于PHP中zip_open()函數(shù)用法的相關(guān)知識(shí)點(diǎn),有需要的朋友們跟著學(xué)習(xí)下。2019-02-02
php版微信開(kāi)發(fā)之接收消息,自動(dòng)判斷及回復(fù)相應(yīng)消息的方法
這篇文章主要介紹了php版微信開(kāi)發(fā)之接收消息,自動(dòng)判斷及回復(fù)相應(yīng)消息的方法,涉及基于微信消息處理接口的調(diào)用相關(guān)操作技巧,需要的朋友可以參考下2016-09-09
關(guān)于PHP中Session文件過(guò)多的問(wèn)題及session文件保存位置
PHP的默認(rèn)機(jī)制:每一次php請(qǐng)求,會(huì)有1/100的概率(默認(rèn)值)觸發(fā)“session回收”。接下來(lái)通過(guò)本文給大家介紹關(guān)于PHP中Session文件過(guò)多的問(wèn)題及session文件保存位置,需要的朋友參考下2016-03-03
CI框架實(shí)現(xiàn)創(chuàng)建自定義類庫(kù)的方法
這篇文章主要介紹了CI框架實(shí)現(xiàn)創(chuàng)建自定義類庫(kù)的方法,結(jié)合實(shí)例形式分析了CI框架創(chuàng)建自定義類庫(kù)的相關(guān)原理、步驟、實(shí)現(xiàn)方法與操作注意事項(xiàng),需要的朋友可以參考下2018-12-12

