news list now can load local json file

This commit is contained in:
Yifei Hu 2024-07-11 12:14:33 +08:00
parent 5c0a5128ac
commit 14294f8a14
9 changed files with 17 additions and 3 deletions

16
ui/app/api/news/route.ts Normal file
View file

@ -0,0 +1,16 @@
import { NextResponse } from "next/server";
import fs from "node:fs/promises";
import path from "node:path";
export async function GET() {
try {
const dataDirectory = path.join(process.cwd(), "public", "data");
const filePath = path.join(dataDirectory, "index.json");
const fileContents = await fs.readFile(filePath, "utf8");
const data = JSON.parse(fileContents);
return NextResponse.json(data);
} catch (error) {
console.error("Error reading news data:", error);
return NextResponse.json({ error: "Failed to load news data" }, { status: 500 });
}
}

View file

@ -19,9 +19,7 @@ const NewsPage = () => {
const fetchNews = async () => {
try {
console.log("Fetching news...");
const response = await fetch(
"https://raw.githubusercontent.com/newspedia-crew/newspedia-web/intern-change/public/data/index.json",
);
const response = await fetch("/api/news");
console.log("Response status:", response.status);
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);