لماذا الإصدارات؟
عند تغيير الواجهة بشكل يكسر التطبيقات القائمة، تُصدر نسخة جديدة دون كسر القديمة.
الإصدار في المسار (الأشهر)
GET /v1/users
GET /v2/users نسخة محسّنة
app.use("/v1", v1Router);
app.use("/v2", v2Router);
الإصدار في الترويسة
Accept: application/vnd.myapi.v2+json
ما الذي يُعدّ تغييرًا كاسرًا؟
- حذف/إعادة تسمية حقل.
- تغيير نوع حقل.
- تغيير سلوك نقطة نهاية.
ما ليس كاسرًا (آمن)
- إضافة حقل جديد اختياري.
- إضافة نقطة نهاية جديدة.
أفضل الممارسات
- ابدأ بـ
/v1من اليوم الأوّل. - وثّق التغييرات وأعطِ مهلة قبل إيقاف نسخة قديمة.
🎯 التالي: الترقيم والتصفية المتقدّمة.