DevToolPal
ع
4xx أخطاء العميل

409 Conflict

تعارض

ماذا يعني

يتعارض الطلب مع الحالة الحالية للمورد، كوجود تكرار أو تعديل متزامن.

الأسباب الشائعة

  • إنشاء سجل موجود مسبقًا (بريد أو اسم فريد)
  • تعديل مورد غيّره شخص آخر
  • تعارض في الإصدار أو الحالة على غرار git

طريقة الإصلاح

إن كنت العميل أو الزائر

اجلب أحدث حالة، وحل التعارض أو اختر قيمة مختلفة، ثم أعد المحاولة.

إن كنت مسؤولًا عن الموقع أو الواجهة البرمجية

اشرح في الجسم ما الذي يتعارض. في القفل المتفائل باستخدام ETag تكون 412 الحالة الأدق.

مثال على الاستجابة

HTTP/1.1
HTTP/1.1 409 Conflict
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Content-Type: application/problem+json

{
  "type": "about:blank",
  "title": "Conflict",
  "status": 409,
  "detail": "A user with this email already exists."
}

المواصفة

RFC 9110 §15.5.10

الأسئلة الشائعة

› 409 أم 422 لبريد مكرر؟

كلاهما مستخدم. 409 يناسب التعارض مع بيانات موجودة؛ و422 يناسب أطر التحقق. التزم بالاتساق.

› هل يعيد العملاء محاولة 409 تلقائيًا؟

لا؛ فالتعارض يحتاج عادةً إلى قرار. حدّث البيانات أولًا.