اذهب إلى المحتوى

السؤال

نشر

السلام عليكم 

هل يوجد طريقة لبناء back end باستخدام next js 14 بدون استخدام next auth 

أريد فقط عمل صفحات محمية يجب على المستخدم إدخال كود للوصول إلى هذه الصفحات 

وذلك عن طريقة إنشاء array تحوي عدة أكواد يجب على المستخدم إدخال واحدة منها للوصول إلى الصفحات المحمية ولا احتاج إلى بريد وكلمة مرور 

Recommended Posts

  • 0
نشر

يمكنك القيام بذلك بالتأكيد،

وهذا مثال على ذلك :

const express = require('express');
const app = express();
const port = 3000;

// مجموعة الأكواد المقبولة
const validCodes = ['2542', '8765', '1234'];

app.get('/', (req, res) => {
  const code = req.query.code; // احصل على الرمز من معامل الاستعلام

  // تحقق مما إذا كان الرمز موجودًا في مجموعة الأكواد المقبولة
  if (validCodes.includes(code)) {
    // إذا كان الرمز صالحًا، قم بعرض الصفحة
    res.send(`
      <!DOCTYPE html>
      <html>
        <head>
          <title>الرمز صالح</title>
        </head>
        <body>
          <h1>الرمز صالح</h1>
          <p>الرمز الذي أدخلته (${code}) صالح.</p>
        </body>
      </html>
    `);
  } else {
    // إذا لم يكن الرمز صالحًا، قم بعرض رسالة خطأ
    res.send(`
      <!DOCTYPE html>
      <html>
        <head>
          <title>الرمز غير صالح</title>
        </head>
        <body>
          <h1>الرمز غير صالح</h1>
          <p>الرمز الذي أدخلته (${code}) غير صالح.</p>
        </body>
      </html>
    `);
  }
});

app.listen(port, () => {
  console.log(`الخادم يعمل على http://localhost:${port}`);
});

ويمكنك الوصول إلى الصفحة عبر الرابط

http://localhost:3000/?code=2542

  • 0
نشر

اعتذر فلم انتبه انك تتحدث عن nextjs يمكنك القيام بذلك في next js بالطريقة التالية :

// app/page.jsx
import ClientComponent from './client/ClientComponent'

// الاكواد الصالحة
const validCodes = ['2542', '1542', '4475']

export default async function Page({ searchParams }) {
  const code = searchParams.code // احضار الكود من الباراميتر

  // التامكد من ان الكود صالح
  const isCodeValid = validCodes.includes(code)

  return (
    <div>
      <h1>Code Validation</h1>
      {isCodeValid ? (
        <div>
          <p>The code you entered ({code}) is valid.</p>
          <ClientComponent />
        </div>
      ) : (
        <p>The code you entered ({code}) is not valid.</p>
      )}
    </div>
  )
}

// app/client/ClientComponent.jsx
export default function ClientComponent() {
  return <p>This is a client component.</p>
}

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...