معالج التخزين المؤقت المخصص في Next.js

في Next.js، يستخدم معالج التخزين المؤقت الافتراضي لموجه الصفحات (Pages Router) وموجه التطبيق (App Router) تخزين نظام الملفات. لا يتطلب هذا أي تكوين، ولكن يمكنك تخصيص معالج التخزين المؤقت باستخدام حقل cacheHandler في ملف next.config.js.

next.config.js
module.exports = {
  cacheHandler: require.resolve('./cache-handler.js'),
  cacheMaxMemorySize: 0, // تعطيل التخزين المؤقت في الذاكرة الافتراضي
}

عرض مثال لـ معالج التخزين المؤقت المخصص ومعرفة المزيد حول التنفيذ.

مرجع API

يمكن لمعالج التخزين المؤقت تنفيذ الطرق التالية: get، set، و revalidateTag.

get()

المعاملالنوعالوصف
keystringالمفتاح للقيمة المخزنة مؤقتًا.

تُرجع القيمة المخزنة مؤقتًا أو null إذا لم يتم العثور عليها.

set()

المعاملالنوعالوصف
keystringالمفتاح لتخزين البيانات تحته.
dataData أو nullالبيانات المراد تخزينها مؤقتًا.
ctx{ tags: [] }وسوم التخزين المؤقت المقدمة.

تُرجع Promise<void>.

revalidateTag()

المعاملالنوعالوصف
tagstringوسم التخزين المؤقت لإعادة التحقق منه.

تُرجع Promise<void>. تعرف على المزيد حول إعادة التحقق من البيانات أو دالة revalidateTag().

معلومة مفيدة:

  • revalidatePath هي طبقة تسهيلية فوق وسوم التخزين المؤقت. استدعاء revalidatePath سوف يستدعي دالة revalidateTag الخاصة بك، والتي يمكنك بعد ذلك اختيار ما إذا كنت تريد وضع وسوم لمفاتيح التخزين المؤقت بناءً على المسار.

سجل الإصدارات

الإصدارالتغييرات
v14.1.0أصبح cacheHandler مستقرًا.
v13.4.0يدعم incrementalCacheHandlerPath (تجريبي) revalidateTag.
v13.4.0يدعم incrementalCacheHandlerPath (تجريبي) الإخراج المستقل.
v12.2.0تمت إضافة incrementalCacheHandlerPath (تجريبي).