Internet - GET,POST und Put?

1 Antwort

Von Experte Palladin007 bestätigt
Ich betrete die Website, wäre das dann ein GET ?

Wenn du eine URL in die Adresszeile deines Browsers eingibst und diese Eingabe bestätigst, wird ein GET-Request ausgeführt. Dasselbe gilt, wenn du auf einen Link klickst.

Die GET-Methode steht allgemein für Leseaufrufe.

Dann werden die Header die zurück kommen als Cookies gesetzt?

Nach einem Request kann entschieden werden, dass ein Cookie gesetzt werden soll. Die dafür notwendigen Informationen stehen dann im Response Header Set-Cookie.

Beispiel:

HTTP/2.0 200 OK
Content-Type: text/html
Set-Cookie: name=Max

Der Browser wird daraufhin den Cookie anlegen, also die Information speichern. In nachfolgenden Requests an den Server wird das Datenpaar im Cookie-Header mitgeschickt:

GET /some-page HTTP/2.0
Host: www.some-website.com
Cookie: name=Max

Wenn es mehrere Wertepaare geben sollte, werden sie via Semikolon voneinander getrennt.

Angenommen ich sende eine Anfrage (...) Aber dort wird ein Token mitgesendet, (...) Woher nimmt er dieses Token?

Wenn der Wert des Tokens nicht egal ist, wird es dem Client zuvor zugeschickt worden sein. Der vorherige Response Body oder der oben erwähnte Set-Cookie-Header könnten die Daten übertragen haben, Sessions wären eine andere Möglichkeit. Oder der Token wurde innerhalb des Browsers anhand bestimmter Informationen generiert.

Seitens ASP.NET gibt es einen sogenannten __RequestVerificationToken, der bei Formularen als Antiforgery Token genutzt wird.

Das Prinzip dahinter ist einfach: Es wird ein Token generiert, der beim Nutzer zum einen in einen Cookie gespeichert und zum anderen in ein verstecktes Formularfeld gerendert wird. Wenn das Formular verschickt wird, kann serverseitig geprüft werden, ob beide Tokens gleich sind. Auf diese Weise wird validiert, ob der Request von der eigenen Seite kam oder von einer fremden Quelle. Denke hierbei daran, dass Cookies domainspezifisch sind.

Wenn Anfragen fremder Quellen möglich sind, könnte das von diesen leicht ausgenutzt werden. Stell dir nur einmal vor, GF könnte deine Klicks auf einen Button wie "Frage stellen" missbrauchen, indem sie im Hintergrund eine Anfrage an Amazon/o.ä. schicken, welche es erlaubt, mit deinem (aktuell noch angemeldeten) Account Waren einzukaufen. Das wäre arg.

Allgemein wären ein paar Information gut, damit ich das besser verstehen kann. (..)

Auf MDN findest du ein Kapitel zum HTTP. Dort werden unter anderem Request Methoden (GET, POST, PUT, ...) erklärt, als auch Cookies.

Palladin007  30.07.2022, 19:37

Bei dem Thema lohnt sich aus das Stichwort "REST"

0