شرح صفوف ومحتوى الفقرة
عندما يرسل عميل الواجهة البرمجية رأس الرسالة Accept: application/json، يحول Laravel أخطاء التحقق والاستثناءات تلقائياً إلى استجابة JSON مهيكلة بدلاً من إعادة التوجيه لصفحة ويب. تُرجع أخطاء التحقق رمز الحالة 422 مع مصفوفة تفصيلية برسائل الخطأ لكل حقل.
- التفاوض عبر رأس الرسالة (Accept Header Negotiation): إرسال الرأس Accept: application/json يوجه معالج الاستثناءات لإرجاع الأخطاء بصيغة JSON.
- استجابة التحقق 422 (HTTP 422 Validation Response): تُرجع رسالة عامة مع كائن errors مفهرس بأسماء الحقول التي فشل التحقق منها.
- خطأ عدم العثور 404 (HTTP 404 Model Not Found): يُرجع الربط الضمني للنموذج استجابة JSON بالرمز 404 تلقائياً إذا لم يوجد السجل.
PHP
public function update(Request $request, Post $post)
{
$data = $request->validate([
'title' => ['required', 'string', 'max:120'],
]);
$post->update($data);
return response()->json($post, 200);
}