mirror of
https://github.com/fabrice404/olympics-calendar.git
synced 2026-01-21 03:39:27 +00:00
add docker
This commit is contained in:
24
ui/app/api/data/[[...slug]]/route.ts
Normal file
24
ui/app/api/data/[[...slug]]/route.ts
Normal file
@ -0,0 +1,24 @@
|
||||
import { promises as fs } from "fs";
|
||||
import { NextResponse } from "next/server";
|
||||
import path from "path";
|
||||
|
||||
const DATA_FOLDER = path.resolve("data");
|
||||
|
||||
export async function GET(
|
||||
request: Request,
|
||||
{ params }: { params: Promise<{ slug?: string[] | undefined }> }
|
||||
): Promise<NextResponse> {
|
||||
try {
|
||||
const { slug } = await params || [];
|
||||
const filePath = slug ? path.join(DATA_FOLDER, ...slug) : null;
|
||||
if (!filePath) throw new Error()
|
||||
|
||||
const content = await fs.readFile(filePath);
|
||||
if (!content) throw new Error()
|
||||
|
||||
return new NextResponse(content, { status: 200 });
|
||||
} catch (ex) {
|
||||
console.log(ex);
|
||||
return new NextResponse("File not found", { status: 404 });
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user