Please, I need help creating a session in this route so that my app can redirect to the dashboard after a successful verification confirmation process. Code below
``
import { type NextRequest, NextResponse } from "next/server"; import { createUserEmailVerificationConfirmation } from "@/lib/actions/user.actions"; import { cookies } from "next/headers";
// Creating a handler to a GET request to route /auth/verify-email export async function GET(request: NextRequest) { const { searchParams } = new URL(request.url); const userId = searchParams.get("userId"); const secret = searchParams.get("secret"); const next = "/dashboard";
// Create redirect link without the secret token const redirectTo = request.nextUrl.clone(); redirectTo.pathname = next; redirectTo.searchParams.delete("userId"); redirectTo.searchParams.delete("secret");
if (userId && secret) { const response = await createUserEmailVerificationConfirmation({ userId, secret, });
console.log(response, "see response");
if (response) {
redirectTo.searchParams.delete("next");
// Create a NextResponse object for setting cookies
const redirectResponse = NextResponse.redirect(redirectTo);
//Intended to create a session here
redirectResponse.cookies.set("session", `session value here`, {
path: "/",
httpOnly: true,
sameSite: "strict",
secure: true,
});
return redirectResponse;
}
}
// return the user to an error page with some instructions redirectTo.pathname = "/error"; return NextResponse.redirect(redirectTo); }
``
After signing up, a verification link is sent, which works fine; it takes the user to the route above. However, I need a session to redirect to the protected dashboard. What is the appropriate flow to handle this as I don't have the email or password in this route?
Recommended threads
- Impossible to get USER after createEmail...
Am using provider to deal with functions linked to appwrite. Here is my login. Future<String?> login(String email, String password) async { try { aw...
- How to Display File in Web?
I'm trying to use Appwrite's Storage to store images and display them in my app, however when I use the `getFileView`, `getFileDownload` or `getFilePreview` met...
- Project Paused Despite Daily Active Usag...
I noticed that my project was automatically **paused**, even though it is actively being used. The project is an **attendance application** that is used daily b...