36 lines
1.0 KiB
TypeScript
36 lines
1.0 KiB
TypeScript
// /pages/api/cpl/getDigitalOutputsHandler.ts
|
|
|
|
import { NextApiRequest, NextApiResponse } from "next";
|
|
import path from "path";
|
|
import fs from "fs/promises";
|
|
import { readFileSync } from "fs";
|
|
|
|
export default async function handler(
|
|
req: NextApiRequest,
|
|
res: NextApiResponse
|
|
) {
|
|
const mode = process.env.NEXT_PUBLIC_CPL_MODE ?? "json";
|
|
|
|
if (mode === "json") {
|
|
// Lese JSON-Datei z.B. digitalOutputsMockData.json
|
|
const filePath = path.join(
|
|
process.cwd(),
|
|
"mocks/api/SERVICE/digitalOutputsMockData.json"
|
|
);
|
|
const content = await fs.readFile(filePath, "utf-8");
|
|
const data = JSON.parse(content);
|
|
return res.status(200).json(data);
|
|
}
|
|
|
|
if (mode === "jsSimulatedProd") {
|
|
const digitalOutputsScript = readFileSync(
|
|
"mocks/device-cgi-simulator/SERVICE/digitalOutputsMockData.js"
|
|
);
|
|
res.setHeader("Content-Type", "application/javascript");
|
|
res.status(200).send(digitalOutputsScript);
|
|
return;
|
|
}
|
|
|
|
return res.status(400).json({ error: "Unsupported mode" });
|
|
}
|