
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
- Custom Domain Verification fail
Hi, I am using a domain from 'get.tech'. I have updated the Name Servers to Appwrite NS records. I had my site hosted on Firebase before, so I removed its DNS r...
- 401 missing scopes
help me i implemented sign up and login and it works well. but after i impement verifcation i got `AppwriteException: app.xxxxxxxxxxxxxxxxx@service.fra.cloud.a...
- Static Astro site returns empty HTML on ...
**Environment** - Appwrite Sites: Cloud - Framework: Astro v5.13.2 - Output mode: Static (output: 'static') - Build command: npm run build - Output di...
