15.2    Cookies lesen

Mithilfe des Programms aus diesem Abschnitt können Sie die Cookies lesen, die Sie von Ihrer Domain aus im Browser des Benutzers gespeichert haben. Auf Cookies anderer Domains haben Sie keinen Zugriff. Nach dem Lesen werden die einzelnen Name-Wert-Paare angezeigt, siehe Abbildung 15.1.

Cookies lesen und ausgeben

Abbildung 15.1    Cookies lesen und ausgeben

In der ersten Zeile wird zunächst die gesamte Cookie-Zeichenkette bezüglich Ihrer Domain ausgegeben. Die einzelnen Cookies sind durch Semikolon voneinander getrennt. Beachten Sie das Leerzeichen nach dem Semikolon. Angaben zu den Eigenschaften expires, path oder secure erscheinen nicht.

Auf das Cookie ViertesCookie kann nur über verschlüsselte Verbindungen zugegriffen werden. Daher wird es bei der hier genutzten unverschlüsselten Verbindung gar nicht angezeigt. In den weiteren Zeilen sehen Sie die Namen und Werte der einzelnen Cookies.

Es folgt das zugehörige Programm:

...
<body><p>
<script>
      document.write(document.cookie + "<br>");
var feld = document.cookie.split(";");
for(let i=0; i<feld.length; i++)
{
if(feld[i].charAt(0) == " ")
feld[i] = feld[i].substring(1);
let teil = feld[i].split("=");
document.write("Name: " + teil[0] + ", Wert: " + teil[1] + "<br>");
}
   </script></p>
</body></html>

Listing 15.2    Datei »ck_lesen.htm«

Die Zeichenkette mit allen Cookies wird mithilfe der Methode split() des String-Objekts in ein Feld von Zeichenketten zerlegt. Falls eines der Feldelemente mit einem Leerzeichen beginnt, so wird es ohne dieses Leerzeichen neu zugewiesen. Dies trifft für alle Feldelemente außer dem ersten Feldelement zu, wie Sie in Abbildung 15.1 erkennen. Anschließend wird jedes Feldelement wiederum mithilfe der Methode split() zerlegt, damit Name und Wert einzeln zur Verfügung stehen.

Warum wird das Leerzeichen entfernt? Falls Sie in einem Programm prüfen möchten, ob ein bestimmtes Cookie vorhanden ist, dann suchen Sie nach einem Cookie mit dem betreffenden Namen, natürlich ohne ein Leerzeichen zu Beginn des Namens. Ein Beispiel dazu sehen Sie in Abschnitt 15.5, »Beispiel für die Nutzung«.

Sie können die Speicherung von Cookies einmal zu Testzwecken ausschalten. Die notwendige Vorgehensweise wird dazu beispielhaft im Browser Chrome 64 erläutert:

Anschließend können Sie die beiden Programme ck_schreiben.htm und ck_lesen.htm erneut aufrufen. Sie werden feststellen, dass die Cookies nicht gespeichert werden.