相關(guān)關(guān)鍵詞
關(guān)于我們
最新文章
- PHP中opcode緩存簡(jiǎn)單用法分析
- thinkPHP控制器變量在模板中的顯示方法示例
- PHP move_uploaded_file() 函數(shù)(將上傳的文件移動(dòng)到新位置)
- dirname(__FILE__)的含義和應(yīng)用說(shuō)明
- thinkPHP5框架實(shí)現(xiàn)分頁(yè)查詢功能的方法示例
- PHP中單雙號(hào)與變量
- PHP獲得當(dāng)日零點(diǎn)時(shí)間戳的方法分析
- Laravel ORM對(duì)Model::find方法進(jìn)行緩存示例詳解
- PHP讀寫文件高并發(fā)處理操作實(shí)例詳解
- 【CLI】利用Curl下載文件實(shí)時(shí)進(jìn)度條顯示的實(shí)現(xiàn)
Laravel學(xué)習(xí)教程之request validation的編寫
前言
本文主要給大家介紹了關(guān)于Laravel之request validation編寫的相關(guān)內(nèi)容,在用laravel寫api時(shí),當(dāng)前端傳進(jìn)來(lái)的request是POST/PUT/PATH等method時(shí),那需要做request validation,盡管對(duì)于前后端分離程序,前端程序Angular/Vue已經(jīng)做了validation,但是ajax傳過(guò)來(lái)的json input,在后端也需要做validation。
那該如何優(yōu)雅的編寫request validation呢?laravel官方文檔已經(jīng)包含了這個(gè)feature: Form Request Validation
實(shí)現(xiàn)方法如下
這里可以寫一個(gè)JsonRequest:
class JsonRequest extends Illuminate\Foundation\Http\FormRequest { public function rules() { $method = $this->method(); assert(in_array($method, [static::METHOD_POST, static::METHOD_PUT, static::METHOD_PATCH], true)); $controller = $this->route()->getController(); $rules = $controller::RULES; return ($rules[$this->method()] ?? []) + ($rules['*'] ?? []); } public function authorize() { return true; } }