Method request.validate() memvalidasi gabungan query string dan body request. Data yang lolos dikembalikan sebagai object dengan field yang didefinisikan.
Validasi request
Route.post('/register', async (request, response) => {
const data = await request.validate({
name: ['required', 'string', 'min:2', 'max:100'],
email: ['required', 'email'],
password: ['required', 'string', 'min:8'],
});
return response.json(data, 201);
});
Kegagalan menghasilkan ValidationException dengan status HTTP 422 dan detail error per field.
{
"message": "The given data was invalid.",
"errors": {
"email": ["email failed the email validation rule."]
}
}
Rule yang tersedia
Validator saat ini mendukung rule umum berikut:
requiredstringemailmin:valuemax:valueintegerbooleannumberin:value,otherconfirmed
Rule dapat ditulis sebagai array atau string yang dipisahkan karakter pipe.
const data = await request.validate({
email: 'required|email',
age: 'integer|min:18',
});