# 📘 API-Routen in `/pages/api/` Dieses Dokument beschreibt die internen API-Routen der Anwendung (Next.js API Routes) und erklärt die verwendeten URL-Parameter sowie Konventionen bei der Nutzung im Backend. --- ## 🔗 Übergabeparameter aus TALAS.web Beim Aufruf der Anwendung über TALAS.web werden die folgenden URL-Parameter übergeben: | Parameter | Bedeutung | Verwendung im Code | |-----------|------------------|---------------------------| | `m` | Map-ID (`idMap`) | `req.query.m` | | `u` | User-ID (`idUser`)| `req.query.u` | > ⚠️ Es wird bewusst **nicht** `idMap` oder `idUser` verwendet, da TALAS mit Kurzparametern arbeitet. ### Beispiel: ```ts const idMap = req.query.m; const idUser = req.query.u; ``` --- ## 🛠 Zweck des Verzeichnisses `/pages/api/` Alle Dateien in diesem Verzeichnis definieren serverseitige Endpunkte. Diese: - werden **nur auf dem Server ausgeführt** - sind über `fetch('/api/...')` vom Frontend aufrufbar - dienen als **Proxy zu SOAP-Webservices** oder **Zugriff auf die Datenbank** --- ## 📁 Beispiel: Aufruf eines Webservice ```bash GET /api/gisSystemStatic?m=10&u=484 ``` Dieser Request wird serverseitig weitergeleitet an: ``` http://[SERVER]/talas5/ClientData/WebServiceMap.asmx/GisSystemStatic?idMap=10&idUser=484 ``` --- ## 📄 Übersicht interner API-Routen | API-Route | Beschreibung | |----------------------------------|------------------------------------------| | `/api/gisSystemStatic` | Proxy zu WebService GisSystemStatic | | `/api/gisStationsStaticDistrict` | Geräte-Liste inkl. Bereich | | `/api/gisStationsMeasurements` | Live-Messwerte der Geräte | | `/api/talas_v5_DB/pois/readLocations` | POIs aus der Datenbank (MySQL) | | `/api/talas_v5_DB/device/getAllStationsNames` | Gerätnamen aus DB | --- ## 🔐 Sicherheitshinweis - Kein sensibler Parameter darf hart codiert sein - Alle Server-URLs werden über `.env.local` konfiguriert - Nur `m` und `u` aus `req.query` verwenden – keine Fallbacks oder Defaults