Fix Upload-Seite: als React-Komponente statt externer HTML, SW-Probleme beseitigt

This commit is contained in:
2026-06-06 00:46:40 +02:00
parent e7ebf2d831
commit f50a9840f7
2 changed files with 125 additions and 8 deletions

View File

@@ -71,6 +71,12 @@ app.use('/api/tools/qrcodes', require('./tools/qrcodes/routes'));
app.use('/api/upload-shares', require('./tools/dateien/upload-share'));
app.use('/api/search', require('./routes/search'));
// Öffentliche Upload-Seite: React-App ausliefern App erkennt /u/ Pfad selbst
app.get('/u/:token', (_req, res) => {
res.setHeader('Cache-Control', 'no-store, no-cache');
res.sendFile(require('path').join(PUBLIC, 'index.html'));
});
const PUBLIC = path.join(__dirname, '../public');
app.get('/manifest.json', (_req, res) => {
@@ -85,13 +91,6 @@ app.get('/sw.js', (_req, res) => {
res.sendFile(path.join(PUBLIC, 'sw.js'));
});
// Öffentliche Upload-Seite (kein Login erforderlich)
const UPLOAD_HTML = path.join(__dirname, '../upload-page.html');
app.get('/u/:token', (_req, res) => {
if (require('fs').existsSync(UPLOAD_HTML)) res.sendFile(UPLOAD_HTML);
else res.status(404).send('Upload-Seite nicht gefunden');
});
app.use(express.static(PUBLIC, {
setHeaders: (res, filePath) => {
// JS/CSS Assets haben Hash im Namen → lang cachen