From 079596c208038d750c8dcaec244a2cac85780da3 Mon Sep 17 00:00:00 2001 From: hailin Date: Wed, 21 May 2025 19:27:03 +0800 Subject: [PATCH] . --- chatdesk-ui/app/api/clearcookies/route.js | 103 +++++++++++----------- chatdesk-ui/middleware.ts | 59 ++++++------- 2 files changed, 81 insertions(+), 81 deletions(-) diff --git a/chatdesk-ui/app/api/clearcookies/route.js b/chatdesk-ui/app/api/clearcookies/route.js index 01d531a..fd54b51 100644 --- a/chatdesk-ui/app/api/clearcookies/route.js +++ b/chatdesk-ui/app/api/clearcookies/route.js @@ -1,56 +1,57 @@ -// import { cookies, headers } from "next/headers"; - -// export async function POST() { -// const cookieStore = cookies(); -// const allCookies = cookieStore.getAll(); - -// console.log("Clearing the following cookies:"); - -// // 获取当前请求的 host(服务器端) -// const hostHeader = headers().get("host"); -// const currentHost = hostHeader || "localhost"; // 如果没有 host 信息,使用 "localhost" - -// // Loop through all cookies and clear them -// allCookies.forEach(({ name }) => { -// console.log(`............Clearing cookie: ${name}`); -// try { -// cookieStore.set({ -// name, -// value: "", -// path: "/", -// maxAge: 0, -// httpOnly: true, -// secure: true, -// sameSite: "lax", -// domain: currentHost, // 使用服务器端获取的 host -// }); -// } catch (error) { -// console.error(`Error clearing cookie ${name}:`, error); -// } -// }); - -// return new Response("Cookies cleared successfully", { status: 200 }); -// } - - - - - - +import { cookies, headers } from "next/headers"; import { NextResponse } from 'next/server'; -export async function POST(req) { - try { - console.log("Clearing cookies..."); +export async function POST() { + const cookieStore = cookies(); + const allCookies = cookieStore.getAll(); - // Perform cookie clearing logic here + console.log("Clearing the following cookies:"); - // Return success response using NextResponse - return NextResponse.json({ message: "Cookies cleared successfully" }, { status: 200 }); - } catch (error) { - console.error("Error occurred while clearing cookies:", error); - - // Return error response - return NextResponse.json({ error: "Internal server error" }, { status: 500 }); - } + // 获取当前请求的 host(服务器端) + const hostHeader = headers().get("host"); + const currentHost = hostHeader || "localhost"; // 如果没有 host 信息,使用 "localhost" + + // Loop through all cookies and clear them + allCookies.forEach(({ name }) => { + console.log(`............Clearing cookie: ${name}`); + try { + cookieStore.set({ + name, + value: "", + path: "/", + maxAge: 0, + httpOnly: true, + secure: true, + sameSite: "lax", + domain: currentHost, // 使用服务器端获取的 host + }); + } catch (error) { + console.error(`Error clearing cookie ${name}:`, error); + } + }); + + // Return success response using NextResponse + return NextResponse.json({ message: "Cookies cleared successfully" }, { status: 200 }); } + + + + + +// import { NextResponse } from 'next/server'; + +// export async function POST(req) { +// try { +// console.log("Clearing cookies..."); + +// // Perform cookie clearing logic here + +// // Return success response using NextResponse +// return NextResponse.json({ message: "Cookies cleared successfully" }, { status: 200 }); +// } catch (error) { +// console.error("Error occurred while clearing cookies:", error); + +// // Return error response +// return NextResponse.json({ error: "Internal server error" }, { status: 500 }); +// } +// } diff --git a/chatdesk-ui/middleware.ts b/chatdesk-ui/middleware.ts index a3b43ce..9560db3 100644 --- a/chatdesk-ui/middleware.ts +++ b/chatdesk-ui/middleware.ts @@ -4,43 +4,42 @@ import { NextResponse, type NextRequest } from "next/server" import i18nConfig from "./i18nConfig" export async function middleware(request: NextRequest) { - // const i18nResult = i18nRouter(request, i18nConfig) - // if (i18nResult) return i18nResult + const i18nResult = i18nRouter(request, i18nConfig) + if (i18nResult) return i18nResult - // try { - // const { supabase, response } = createClient(request) + try { + const { supabase, response } = createClient(request) - // const session = await supabase.auth.getSession() + const session = await supabase.auth.getSession() - // const redirectToChat = session && request.nextUrl.pathname === "/" + const redirectToChat = session && request.nextUrl.pathname === "/" - // if (redirectToChat) { - // const { data: homeWorkspace, error } = await supabase - // .from("workspaces") - // .select("*") - // .eq("user_id", session.data.session?.user.id) - // .eq("is_home", true) - // .single() + if (redirectToChat) { + const { data: homeWorkspace, error } = await supabase + .from("workspaces") + .select("*") + .eq("user_id", session.data.session?.user.id) + .eq("is_home", true) + .single() - // if (!homeWorkspace) { - // throw new Error(error?.message) - // } + if (!homeWorkspace) { + throw new Error(error?.message) + } - // console.log("[middleware] redirecting to ",`/${homeWorkspace.id}/chat`) - // return NextResponse.redirect( - // new URL(`/${homeWorkspace.id}/chat`, request.url) - // ) - // } + console.log("[middleware] redirecting to ",`/${homeWorkspace.id}/chat`) + return NextResponse.redirect( + new URL(`/${homeWorkspace.id}/chat`, request.url) + ) + } - // return response - // } catch (e) { - // return NextResponse.next({ - // request: { - // headers: request.headers - // } - // }) - // } - return NextResponse.next(); + return response + } catch (e) { + return NextResponse.next({ + request: { + headers: request.headers + } + }) + } } export const config = {