Error:localhost redirected too many times

Whenever the user is authenticated and a web page is refreshed I keep getting this error "error:localhost redirected too many times try to clear cookies". Using codes below b
import { redirect } from 'next/navigation' 
 import { cookies } from 'next/headers' 
 import { verify,sign } from "jsonwebtoken"; 
 import { COOKIE_NAME } from '../constants/cookie'; 
 import prisma from "@/prisma/client"; 
  
 export const revalidate = 0; 
  
 export default  async function Protect({ 
  
     children, 
   }: { 
     children: React.ReactNode 
   }){ 
     const session = await getServerSession(authOptions) 
  
     // const user = await getUserAction() 
   // const cookieStore = cookies() 
   // const authorization = cookieStore.get('adminToken') 
   // console.log(authorization?.value) 
   // const user = JSON.parse(authorization!.value) 
  
   const cookieStore = cookies(); 
  
   const token = cookieStore.get(COOKIE_NAME); 
  
     if (!token) { 
       redirect("/") 
      } 
  
      const { value } = token; 
  
      const secret = process.env.JWT_SECRET || ""; 
  
      var decode =  verify(value, secret) as { user: { id: string; email: string; name: string; image: string | null; role: string; hashedPassword: string }; iat: number; exp: number }; 
      ; 
  
      const useri = decode.user 
  
      const email = useri.email; 
  
  
   const user = await prisma.user.findFirst({ 
     where:{ 
       email:email, 
       ustate:"NON_BLOCKED" 
     }, 
     select:{ 
       id:true, 
       name:true, 
       role:true, 
     } 
  
    }) 
  
      if (!user) { 
       redirect("/") 
      } 
  
     if(user.role == "USER"){ 
     redirect("/home") 
     } 
  
     if(user.role == "ADMIN") 
     return( 
       <section>{children}</section> 
     ) 
 }
Was this page helpful?