Was ist Post-Redirect-Get?
Post-Redirect-Get (PRG) ist ein Muster für die Webentwicklung, das verwendet wird, um die Verwendung von HTTP-POST-Anfragen zu vermeiden, wenn Benutzer eine Webseite aktualisieren oder neu laden. Es wird häufig verwendet, um sicherzustellen, dass Benutzer keine Mehrfachübermittlung von Formulardaten durchführen, indem sie die Schaltfläche “Aktualisieren” oder “Neu laden” anklicken, nachdem sie ein Formular abgesendet haben.
Das PRG-Muster besteht aus drei Schritten:
- Der Benutzer sendet eine HTTP-POST-Anfrage an den Server, indem er ein Formular absendet.
- Der Server verarbeitet die Anfrage und sendet dem Benutzer eine HTTP-REDIRECT-Antwort zurück, die ihn auffordert, eine neue HTTP-GET-Anfrage zu einer anderen URL zu senden.
- Der Benutzer sendet eine HTTP-GET-Anfrage an die neue URL, die vom Server geliefert wurde. Der Server liefert dann die aktualisierte Webseite zurück.
Das PRG-Muster verhindert, dass Benutzer beim Neuladen oder Aktualisieren einer Webseite die gleichen Formulardaten erneut übermitteln, indem es sie dazu auffordert, eine neue HTTP-GET-Anfrage zu senden, anstatt die gleiche POST-Anfrage erneut zu senden. Es hilft auch, Probleme mit doppelten Einträgen in Datenbanken oder anderen Nebenwirkungen von Mehrfachübermittlungen von Formularen zu vermeiden.