feat: enhance CSV upload handling with chunked requests and token support; improve form input limits

This commit is contained in:
2025-08-14 10:38:35 +02:00
parent bb63388986
commit 214a3cb3c8
6 changed files with 961 additions and 61 deletions

View File

@@ -15,9 +15,10 @@ const app = express();
const port = 8002;
app.use(cors());
app.use(express.urlencoded({ extended: true }));
// Increase body size limits to support large CSV JSON payloads
app.use(express.urlencoded({ extended: true, limit: "10mb" }));
app.set("view engine", "ejs");
app.use(express.json());
app.use(express.json({ limit: "10mb" }));
app.get("/", (req, res) => {
res.render("index.ejs", { title: port });
@@ -32,22 +33,8 @@ app.post("/lose", async (req, res) => {
}
});
// !!!!!!! AUTHORISATION HINZUFÜGEN - DENN GEHT NICHT !!!!!!!!
app.get("/table-data", authenticate, async (req, res) => {
const result = await getTableData();
if (result.success) {
@@ -57,16 +44,21 @@ app.get("/table-data", authenticate, async (req, res) => {
}
});
app.post("/create-entry", async (req, res) => {
const result = await createEntry(req.body.losnummer);
if (result) {
res.status(201).json({ success: true });
} else {
res.status(400).json({ success: false });
app.post("/create-entry", authenticate, async (req, res) => {
try {
const result = await createEntry(req.body.losnummer);
if (result) {
res.status(201).json({ success: true });
} else {
res.status(400).json({ success: false, message: "Insert failed" });
}
} catch (err) {
console.error("/create-entry error", err);
res.status(500).json({ success: false, message: String(err) });
}
});
app.delete("/remove-entries", async (req, res) => {
app.delete("/remove-entries", authenticate, async (req, res) => {
const result = await removeEntries(req.body.losnummern);
if (result) {
res.status(200).json({ success: true });
@@ -75,7 +67,7 @@ app.delete("/remove-entries", async (req, res) => {
}
});
app.put("/save-row", async (req, res) => {
app.put("/save-row", authenticate, async (req, res) => {
const result = await saveRow(req.body);
if (result.success) {
res.status(200).json({ success: true });