• 1401/03/06

مشکل در ریدایرکت برای محافظت از صفحه داشبورد :

سلام و خداقوت. تشکر بابت دوره.

من یه بلاگ زدم و برای اینکه از صفحه داشبورد محافظت کنم که هر یوزری نتونه واردش بشه، ریکوئست میزنم به یه api که آیا ادمین هست یا نه. توی پاسخ ریکوئست اگر کچ شد میخوام ریدایرکت بشه به صفحه اصلی. جسارتا فکر کنم کد رو ببینید بیشتر متوجه سوالم بشید. 

کاربر وقتی وارد صفحه داشبورد میشه، اگر توکن نداشته باشه ریدایرکت میشه ولی مشکل اینه که وقتی توکن داره ولی این توکن، توکن ادمین نیست، میره توی کچ اکسیوس ولی ریدایرکت نمیشه.

 

export async function getServerSideProps(context) {

    const userCookie = context.req.cookies.authtoken;
   if (!userCookie) {
    return {
        redirect: {
           permanent: false,
           destination: "/login",
        },
        props: {},
     };
   }

        axios.get(`https://URL/api/user-is-admin`, {headers: { authtoken: userCookie }})
        .then(d=>console.log("is admin"))
        .catch(e=>{
            return {
               redirect: {
                  permanent: false,
                  destination: "/login",
               },
               props: {},
         };
        })
    

   const [res1, res2] = await Promise.all([
      axios.get("https://URL/api/posts-pointer"),
      axios.get("https://URL/api/categories-pointer"),
   ]);

   const data = [res1.data, res2.data];
   return { props: { data } };
}

         };

        }

  • 1401/03/07
  • ساعت 16:02

سلام دوست عزیز

از بابت response های دریافتی از درخواست هاتون و همین طور مقادیری که باید چک کنه مطمئن هستید؟


logo-samandehi