Laravel / دليل حلول تحريري

419 وتحويلات التحقق وأخطاء JSON غير المتوقعة

حدد أول حد رفض الطلب. افصلCSRF الجلسة والمصادقة وإذن Form Request والقواعد والتفاوض قبل إضعاف الوسيط.

وقت القراءة التقريبي: 2 دقيقةتاريخ مراجعة المحتوى

قاعدة معرفة للقراءة فقط · بلا تعليقات عامة

تعرّف على الأعراض

يرفض النموذج419 أو يتلقىAPI صفحة دخول أو تحويل تحقق أو422. سجل الطريقة والعنوان والنوع وAccept والحالة والمجموعة، واحفظ التشخيص دون كوكي ورمز بتقرير عام.

افهم الأسباب المحتملة

  • تشمل الأسباب الجلسة الغائبة والمنتهية ونطاق الكوكي والرمز القديم والمجموعة وإذنForm Request والتطبيع والقواعد. قد يتجاوز الاختبارCSRF عمداً فلا يثبت خط المتصفح المنشور.

1. تصنيف الاستجابة قبل تعديل القواعد

افحص التحويل وفئةJSON ووصول المتحكم بمعزل. تختلف المراحل وإصلاحاتها؛ فلا يثبت422 الجلسة أو تحويل الدخول القواعد. أكد الإصدار والإعداد لا وصفة هيكل قديم، ولا تحول الجميع200 أو تعطل الحماية للرد المطلوب.

2. تتبع ملكية الجلسة والرمز

افحص ضبط الكوكي وإرسالها بنطاق وHTTPS وSameSite، ومصدر الرمز وحمله الموثق. قد لا يطابق المنسوخ من جلسة أو صفحة قديمة الحالي. افحص معالجاً مملوكاً لا حساباً حقيقياً. أصلح العمر والنقل لا كشف المعرف وتوسيع الاستثناء وإضعاف الصفات.

3. فحص البنية والتفاوض

افحص التمثيل والحقول الصالحة؛ فلا تحولinteger تلقائياً وقد يخالف المصفوفي الأولي. يؤثرAccept في العرض. يوضح المثالexpectsJson فقط لا معالج الخطأ أو الحالة. افحصauthorize منفصلاً واحفظ القديم الآمن وربط الخطأ للتصحيح.

php تفاوض محلي لا اختبارHTTP كامل
<?php
declare(strict_types=1);
require __DIR__ . '/vendor/autoload.php';
$json = Illuminate\Http\Request::create('/courses', 'POST', [], [], [], ['HTTP_ACCEPT' => 'application/json']);
$html = Illuminate\Http\Request::create('/courses', 'POST', [], [], [], ['HTTP_ACCEPT' => 'text/html']);
echo $json->expectsJson() ? "json\n" : "html\n";
echo $html->expectsJson() ? "json\n" : "html\n";
الناتج المتوقع
json
html

يثبت تفضيل الطلب فقط دون الوسيط والجلسة وForm Request وعرض الرد.

4. استعادة العقد وفحص غياب الآثار

أصلح المجموعة أو الجلسة أو الإذن أو المخطط تحديداً. اختر الصالح وقيم الخادم للسعر والدور والملكية. لا ينشئ المرفوض صفاً أو أثراً مالياً. أضف مسموحاً ضابطاً كيلا يبدو التعطل نجاحاً سلبياً. وضح تجاوز الاختبار وأضف دليلاً للعقد الفعلي لا ادعاء أمان كامل.

تحقق من نجاح الإصلاح

افحص الصالح والخاطئ والمنتهي وغير المأذون والمشوه وشكلHTML وJSON بمعزل. افحص الحالة والترويسات والجسم والتصحيح وثبات الحفظ، وسجل الوسيط واختصارات الاختبار.

امنع تكرار المشكلة

  • وثّق المجموعة والرمز والمدخل والتفاوض معاً واحفظ تكراراً صغيراً. تجنب الاستثناء الواسع والتشخيص العام وأعد المسموح والمرفوض عند تغير الإعداد.

المراجع الرسمية