21 lines
532 B
TypeScript
21 lines
532 B
TypeScript
import { NextResponse } from 'next/server';
|
|
|
|
export async function POST(request: Request) {
|
|
const body = await request.json();
|
|
|
|
if (body.password === process.env.DASHBOARD_PASSWORD) {
|
|
const response = NextResponse.json({ success: true });
|
|
// Set cookie for 1 day
|
|
response.cookies.set({
|
|
name: 'auth_session',
|
|
value: 'authenticated',
|
|
httpOnly: true,
|
|
path: '/',
|
|
maxAge: 60 * 60 * 24,
|
|
});
|
|
return response;
|
|
}
|
|
|
|
return NextResponse.json({ success: false }, { status: 401 });
|
|
}
|