Next.js App Router ودليل SSR
دليل معماري خطوة بخطوة لدمج Aurabase في تطبيق Next.js 14/15 App Router مع مكونات الخادم وإجراءات الخادم والبرامج الوسيطة والجلسات الآمنة.
نموذج Aurabase SSR
في التطبيقات الحديثة المقدمة من جانب الخادم، لا يمكن تخزين حالة مصادقة المستخدم في localStorage الخاص بالمتصفح (لا يمكن الوصول إليها بواسطة الخادم). يقوم Aurabase تلقائيًا بمزامنة الجلسة في ملفات تعريف الارتباط الآمنة HTTP.
createServerClient بدون حالة مشتركة في الذاكرة. يقوم كل طلب خادم بإنشاء مثيل لعميل معزول متصل برؤوس HTTP الخاصة بالطلب، مما يضمن الترابط المطلق بين المستخدمين (صفر خطر تسرب الجلسة).
جهاز توجيه التطبيقات ذو الركائز الثلاث
تحدد متصفحات الويب حجم ملف تعريف الارتباط بحوالي 4 كيلو بايت. عندما يتجاوز رمز JWT أو بيانات تعريف المستخدم هذا الحد، تقوم الوحدة @aurabase/aurabase-js/ssr تلقائيًا بتقسيم التحميل إلى عدة ملفات تعريف ارتباط مرقمة:
aura-[project_id]-auth.0(أول 3600 بايت)aura-[project_id]-auth.1(بقية الجلسة)
عند القراءة، يقوم الخادم بإعادة تجميع القطع بأمانة من أجل استعادة الحالة دون أي فقدان للبيانات أو انقطاع الجلسة.
القواعد الذهبية في الإنتاج
سمات HttpOnly وSameSite
لا ينبغي أبدًا عرض ملفات تعريف الارتباط المميزة لجافا سكريبت للعميل لمنع هجمات XSS.
خدمة مفتاح الدور بدقة الخادم
لا تقم أبدًا بتمرير SERVICE_ROLE_KEY الخاص بك إلى createBrowserClient أو المكونات باستخدام توجيه "استخدام العميل".
تحديث في الوسيطة
اتصل دائمًا بـ getSession() أو getUser() في البرنامج الوسيط لتجديد الرموز المميزة قبل انتهاء صلاحيتها.