This commit is contained in:
parent
f6ac9c9bba
commit
079596c208
|
|
@ -1,56 +1,57 @@
|
||||||
// import { cookies, headers } from "next/headers";
|
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 { NextResponse } from 'next/server';
|
import { NextResponse } from 'next/server';
|
||||||
|
|
||||||
export async function POST(req) {
|
export async function POST() {
|
||||||
try {
|
const cookieStore = cookies();
|
||||||
console.log("Clearing cookies...");
|
const allCookies = cookieStore.getAll();
|
||||||
|
|
||||||
// Perform cookie clearing logic here
|
console.log("Clearing the following cookies:");
|
||||||
|
|
||||||
// Return success response using NextResponse
|
// 获取当前请求的 host(服务器端)
|
||||||
return NextResponse.json({ message: "Cookies cleared successfully" }, { status: 200 });
|
const hostHeader = headers().get("host");
|
||||||
} catch (error) {
|
const currentHost = hostHeader || "localhost"; // 如果没有 host 信息,使用 "localhost"
|
||||||
console.error("Error occurred while clearing cookies:", error);
|
|
||||||
|
|
||||||
// Return error response
|
// Loop through all cookies and clear them
|
||||||
return NextResponse.json({ error: "Internal server error" }, { status: 500 });
|
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 });
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
|
||||||
|
|
@ -4,43 +4,42 @@ import { NextResponse, type NextRequest } from "next/server"
|
||||||
import i18nConfig from "./i18nConfig"
|
import i18nConfig from "./i18nConfig"
|
||||||
|
|
||||||
export async function middleware(request: NextRequest) {
|
export async function middleware(request: NextRequest) {
|
||||||
// const i18nResult = i18nRouter(request, i18nConfig)
|
const i18nResult = i18nRouter(request, i18nConfig)
|
||||||
// if (i18nResult) return i18nResult
|
if (i18nResult) return i18nResult
|
||||||
|
|
||||||
// try {
|
try {
|
||||||
// const { supabase, response } = createClient(request)
|
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) {
|
if (redirectToChat) {
|
||||||
// const { data: homeWorkspace, error } = await supabase
|
const { data: homeWorkspace, error } = await supabase
|
||||||
// .from("workspaces")
|
.from("workspaces")
|
||||||
// .select("*")
|
.select("*")
|
||||||
// .eq("user_id", session.data.session?.user.id)
|
.eq("user_id", session.data.session?.user.id)
|
||||||
// .eq("is_home", true)
|
.eq("is_home", true)
|
||||||
// .single()
|
.single()
|
||||||
|
|
||||||
// if (!homeWorkspace) {
|
if (!homeWorkspace) {
|
||||||
// throw new Error(error?.message)
|
throw new Error(error?.message)
|
||||||
// }
|
}
|
||||||
|
|
||||||
// console.log("[middleware] redirecting to ",`/${homeWorkspace.id}/chat`)
|
console.log("[middleware] redirecting to ",`/${homeWorkspace.id}/chat`)
|
||||||
// return NextResponse.redirect(
|
return NextResponse.redirect(
|
||||||
// new URL(`/${homeWorkspace.id}/chat`, request.url)
|
new URL(`/${homeWorkspace.id}/chat`, request.url)
|
||||||
// )
|
)
|
||||||
// }
|
}
|
||||||
|
|
||||||
// return response
|
return response
|
||||||
// } catch (e) {
|
} catch (e) {
|
||||||
// return NextResponse.next({
|
return NextResponse.next({
|
||||||
// request: {
|
request: {
|
||||||
// headers: request.headers
|
headers: request.headers
|
||||||
// }
|
}
|
||||||
// })
|
})
|
||||||
// }
|
}
|
||||||
return NextResponse.next();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export const config = {
|
export const config = {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue