# History API / pushState

Kategorie: [Rendering & JavaScript](https://seo-geo-glossary.com/de/glossar/kategorie/rendering-javascript/) › [JavaScript & Frameworks](https://seo-geo-glossary.com/de/glossar/kategorie/rendering-javascript/javascript-frameworks/) · Auch genannt: pushState, replaceState

Die **History API** ist eine Browser-Schnittstelle, über die JavaScript den Sitzungsverlauf eines Tabs liest und verändert. Mit `pushState()` und `replaceState()` legt ein Skript einen neuen Verlaufseintrag an oder ersetzt den aktuellen, wahlweise mit neuer URL und ohne die Seite neu zu laden.

## Wie funktioniert die History API?

`pushState(state, unused, url)` nimmt ein serialisierbares Objekt, einen veralteten Parameter und optional eine URL entgegen. Die URL muss denselben Ursprung haben wie die aktuelle, sonst löst `pushState()` eine Ausnahme aus. Der Browser lädt die neue Adresse nicht. Beim Navigieren im Verlauf feuert das Ereignis `popstate`. Die Methoden gelten laut MDN seit Juli 2015 in allen modernen Browsern als weit verfügbar.

## Bedeutung für SEO

Single-Page-Anwendungen wechseln Ansichten per JavaScript. Mit der History API bekommt jede Ansicht eine eigene, normale URL ohne Fragment. Google empfiehlt dafür die History API und rät davon ab, URL-Fragmente für unterschiedliche Inhalte zu verwenden.

Wer die Adresse direkt aufruft oder die Seite neu lädt, erreicht den Server. Der Server sollte deshalb für jede dieser URLs eine vollständige Seite mit passendem Statuscode liefern (Einschätzung).

## Beispiel

```javascript
const url = new URL(location);
url.pathname = "/schuhe/sneaker";
history.pushState({}, "", url);
```

Die Adresszeile zeigt `/schuhe/sneaker`, die Seite wurde nicht neu geladen.

## Verwandte Begriffe

- [Single-Page-Application (SPA)](https://seo-geo-glossary.com/de/glossar/single-page-application/index.md)
- [Hash-URLs (#!)](https://seo-geo-glossary.com/de/glossar/hash-urls/index.md)
- [Fragment-Identifier (#)](https://seo-geo-glossary.com/de/glossar/fragment-identifier/index.md)
- [JavaScript-SEO](https://seo-geo-glossary.com/de/glossar/javascript-seo/index.md)
- [Client-Side Rendering (CSR)](https://seo-geo-glossary.com/de/glossar/client-side-rendering/index.md)
- [Rendering](https://seo-geo-glossary.com/de/glossar/rendering/index.md)

## Quellen

- [History: pushState() – MDN](https://developer.mozilla.org/en-US/docs/Web/API/History/pushState)
- [History API – MDN](https://developer.mozilla.org/en-US/docs/Web/API/History_API)
- [Fix Search-related JavaScript problems – Google Search Central](https://developers.google.com/search/docs/crawling-indexing/javascript/fix-search-javascript)

---

Stand: 7. Oktober 2026
URL: https://seo-geo-glossary.com/de/glossar/history-api-pushstate/
