feat: API für Systemspannung +5V erfolgreich implementiert
- API-Handler `getSystemspannung5VplusHandler.ts` erstellt - JSON-Daten werden aus dem Verzeichnis `mocks/device-cgi-simulator/chartsData/systemspannung5Vplus/` geladen - unterstützt die Parameter DIA0, DIA1, DIA2 für unterschiedliche Datenfrequenzen - Fehlerbehandlung bei ungültigen Typen und fehlenden Dateien eingebaut - API getestet unter `/api/cpl/getSystemspannung5VplusHandler?typ=DIA0`
This commit is contained in:
35
pages/api/cpl/getSystemspannung5VplusHandler.ts
Normal file
35
pages/api/cpl/getSystemspannung5VplusHandler.ts
Normal file
@@ -0,0 +1,35 @@
|
||||
// @/pages/api/cpl/getSystemspannung5VplusHandler.ts
|
||||
import { NextApiRequest, NextApiResponse } from "next";
|
||||
import path from "path";
|
||||
import fs from "fs/promises";
|
||||
|
||||
export default async function handler(
|
||||
req: NextApiRequest,
|
||||
res: NextApiResponse
|
||||
) {
|
||||
const { typ = "DIA0" } = req.query;
|
||||
|
||||
if (!["DIA0", "DIA1", "DIA2"].includes(typ as string)) {
|
||||
return res
|
||||
.status(400)
|
||||
.json({ error: "Ungültiger Typ. Nur DIA0, DIA1 oder DIA2 erlaubt." });
|
||||
}
|
||||
|
||||
try {
|
||||
// Verwende __dirname um relativen Pfad zur API-Datei zu bestimmen
|
||||
const filePath = path.join(
|
||||
process.cwd(), // ← Root-Projektverzeichnis
|
||||
"mocks/device-cgi-simulator/chartsData/systemspannung5Vplus",
|
||||
`${typ}.json`
|
||||
);
|
||||
|
||||
const fileContent = await fs.readFile(filePath, "utf-8");
|
||||
const json = JSON.parse(fileContent);
|
||||
return res.status(200).json(json);
|
||||
} catch (error) {
|
||||
console.error("❌ Fehler beim Lesen der Datei:", error);
|
||||
return res
|
||||
.status(500)
|
||||
.json({ error: "Datei konnte nicht gelesen werden." });
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user