30 lines
707 B
TypeScript
30 lines
707 B
TypeScript
import { NextResponse } from 'next/server';
|
|
|
|
export async function POST() {
|
|
const response = NextResponse.json({
|
|
message: 'Logout berhasil',
|
|
});
|
|
|
|
// Clear the session cookie
|
|
response.cookies.set('user_session', '', {
|
|
httpOnly: true,
|
|
secure: process.env.NODE_ENV === 'production',
|
|
sameSite: 'lax',
|
|
maxAge: 0, // Expire immediately
|
|
path: '/',
|
|
});
|
|
|
|
return response;
|
|
}
|
|
|
|
// Handle OPTIONS request for CORS
|
|
export async function OPTIONS() {
|
|
return NextResponse.json({}, {
|
|
headers: {
|
|
'Access-Control-Allow-Origin': '*',
|
|
'Access-Control-Allow-Methods': 'POST, OPTIONS',
|
|
'Access-Control-Allow-Headers': 'Content-Type, Authorization',
|
|
}
|
|
});
|
|
}
|