This commit is contained in:
parent
80fa6fba00
commit
bbca756b9b
|
|
@ -1,33 +1,48 @@
|
||||||
import { cookies, headers } from "next/headers";
|
// import { cookies, headers } from "next/headers";
|
||||||
|
|
||||||
export async function POST() {
|
// export async function POST() {
|
||||||
const cookieStore = cookies();
|
// const cookieStore = cookies();
|
||||||
const allCookies = cookieStore.getAll();
|
// const allCookies = cookieStore.getAll();
|
||||||
|
|
||||||
console.log("Clearing the following cookies:");
|
// console.log("Clearing the following cookies:");
|
||||||
|
|
||||||
// 获取当前请求的 host(服务器端)
|
// // 获取当前请求的 host(服务器端)
|
||||||
const hostHeader = headers().get("host");
|
// const hostHeader = headers().get("host");
|
||||||
const currentHost = hostHeader || "localhost"; // 如果没有 host 信息,使用 "localhost"
|
// const currentHost = hostHeader || "localhost"; // 如果没有 host 信息,使用 "localhost"
|
||||||
|
|
||||||
// Loop through all cookies and clear them
|
// // Loop through all cookies and clear them
|
||||||
allCookies.forEach(({ name }) => {
|
// allCookies.forEach(({ name }) => {
|
||||||
console.log(`............Clearing cookie: ${name}`);
|
// console.log(`............Clearing cookie: ${name}`);
|
||||||
try {
|
// try {
|
||||||
cookieStore.set({
|
// cookieStore.set({
|
||||||
name,
|
// name,
|
||||||
value: "",
|
// value: "",
|
||||||
path: "/",
|
// path: "/",
|
||||||
maxAge: 0,
|
// maxAge: 0,
|
||||||
httpOnly: true,
|
// httpOnly: true,
|
||||||
secure: true,
|
// secure: true,
|
||||||
sameSite: "lax",
|
// sameSite: "lax",
|
||||||
domain: currentHost, // 使用服务器端获取的 host
|
// domain: currentHost, // 使用服务器端获取的 host
|
||||||
});
|
// });
|
||||||
} catch (error) {
|
// } catch (error) {
|
||||||
console.error(`Error clearing cookie ${name}:`, error);
|
// console.error(`Error clearing cookie ${name}:`, error);
|
||||||
}
|
// }
|
||||||
});
|
// });
|
||||||
|
|
||||||
return new Response("Cookies cleared successfully", { status: 200 });
|
// return new Response("Cookies cleared successfully", { status: 200 });
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
export async function POST(req, res) {
|
||||||
|
try {
|
||||||
|
// 模拟清除所有 cookies 的操作
|
||||||
|
console.log("Clearing all cookies...");
|
||||||
|
|
||||||
|
// 返回一个成功的响应
|
||||||
|
return res.status(200).json({ message: "Cookies cleared successfully" });
|
||||||
|
} catch (error) {
|
||||||
|
console.error("Error clearing cookies:", error);
|
||||||
|
return res.status(500).json({ error: "Failed to clear cookies" });
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue