Next.js Discord

Discord Forum

How to refresh a page from Routes Handler?

Unanswered
Carpenter wasp posted this in #help-forum
Open in Discord
Carpenter waspOP
..

6 Replies

Carpenter waspOP
I have page like this
after i use signin by google and success will like this
after success i want to close and refresh page
this my api
import { setToken } from "@/app/(authentication)/_utils/token";
import { revalidatePath } from "next/cache";
import { NextRequest } from "next/server";

export async function GET(request: NextRequest, { params }: { params: { passport: string } }) {
  const passport = params.passport
  const searchParams = request.nextUrl.searchParams;

  let queryString = "";
  searchParams.forEach((value, key) => {
    queryString += `${encodeURIComponent(key)}=${encodeURIComponent(value)}&`;
  });
  queryString = queryString.slice(0, -1);

  const fetchRes = await fetch(`${process.env.NEXT_PUBLIC_BACKEND_URL}/api/oauth/${passport}/exchange?${queryString}`, {
    headers: {
      'Content-Type': 'application/json',
    },
  });

  const fetchResOutput = await fetchRes.json();

  if (!fetchRes.ok) {
    const { message } = fetchResOutput;
    return new Response(message, {
      status: fetchRes.status,
    });
  }

  const { data } = fetchResOutput;

  await setToken(data);
  
  revalidatePath('/', 'layout')

  return new Response('Noice!', {
    status: fetchRes.status,
  });
}
i use revalidatePath('/', 'layout') but not work
Carpenter waspOP
up