Single Page Application

Eine Single Page Application (SPA) ist eine Webanwendung, die nach dem ersten Laden nur noch Daten nachlädt und die Seite per JavaScript im Browser aktualisiert, statt bei jeder Interaktion ein vollständig neues HTML-Dokument vom Server anzufordern.

Kurz erklärt

Bei einer klassischen Website (Multi-Page Application) fordert der Browser bei jedem Klick auf einen Link ein komplett neues HTML-Dokument vom Server an. Eine SPA lädt dagegen nur einmal ein initiales HTML-Gerüst, übernimmt anschließend selbst die Navigation über JavaScript und aktualisiert dabei gezielt Teile des DOM, meist gespeist über Daten, die im Hintergrund per API-Aufruf nachgeladen werden. Für Nutzer wirkt das oft flüssiger, da kein vollständiger Seitenneuaufbau bei jeder Navigation nötig ist.

Beispiel

In einer SPA-basierten E-Mail-Anwendung öffnet ein Klick auf eine E-Mail nicht eine neue Seite, sondern lädt lediglich den Inhalt der E-Mail per API-Aufruf nach und tauscht den entsprechenden Bereich der bereits geladenen Seite aus - die umgebende Oberfläche (Navigation, Seitenleiste) bleibt dabei unverändert bestehen.

Warum ist das relevant?

SPAs prägen weite Teile moderner Webanwendungen, insbesondere komplexe, interaktive Anwendungen wie E-Mail-Clients, Projektmanagement-Tools oder Social-Media-Plattformen. Sie bringen aber eigene Herausforderungen mit sich: Ohne zusätzliche Maßnahmen liefert der Server beim ersten Laden oft nur ein weitgehend leeres HTML-Gerüst aus, dessen eigentlicher Inhalt erst nach Ausführung von JavaScript entsteht - das kann sich auf Ladezeiten und Auffindbarkeit durch Suchmaschinen auswirken, wenn nicht gezielt gegengesteuert wird.

Häufige Missverständnisse

Die pauschale Annahme “SPAs sind schlecht für SEO” ist überholt - moderne Ansätze rendern den initialen Inhalt serverseitig vor oder zumindest so, dass Suchmaschinen-Crawler ihn direkt erfassen können, statt sich allein auf clientseitig ausgeführtes JavaScript zu verlassen. Auch ist “Single Page” wörtlich zu nehmen: Es bedeutet ein einzelnes geladenes HTML-Dokument, nicht zwingend eine Anwendung mit nur einer sichtbaren Ansicht - eine SPA kann intern beliebig viele unterschiedliche “Seiten” per JavaScript-Routing darstellen.

Weiterführende Inhalte