Server Client Grundkenntnisse Http Part 1

Bis jetzt haben wir in diesem Blogg nur die  Clientseitige Programmierung beachtet. Es wird Zeit jetzt auch einmal die Server Seite zu betrachten. Bevor Sie mit dem programmieren loslegen können, muss Klarheit über Begriffe und Konzepte bestehen.

Server und Client

Wie überall in der IT sind englischsprachige Ausdrücke dominant. Der Browser der auf Ihrem System läuft ist der Client. Wenn Sie eine Webadresse aufrufen, steht irgendwo in der Welt ein Computersystem, der Ihnen diese Website "liefert". Dieses System ist der Server.

Auf Ihrem System kann nicht nur der Browser als Client dienen. Heute ist es üblich, das viele Softwarepakete auf das Internet zugreifen. Sei es um auf installierbare Updates zu prüfen, oder um ganz einfach Daten in der Cloud zu speichern.

Alles hat eine Adresse

Was eine URL ist, wissen heute die meisten. Eine Uniform Resource Locator ist, wie häufig in der IT, ein Standard. Er dient dazu bestimmte Inhalte aufzurufen. Er legt dabei fest, wie eine solche Webadresse auszusehen hat. Randnotiz: In der Welt der Standards ist da noch das eng verwandte URI. Dahinter verbirgt sich Uniform Resource Identifier. Allein diese zwei Begriffe bieten schon genügend Stoff für einen Artikel. 

Im ersten Moment ist nur wichtig zu wissen: Eine URL sagt uns wo eine Resource zu finden ist ! Schauen Sie sich eine Webadresse einmal genau an:

http://www.beispiel.com:80/artikel?q=flutter&language=de

Schreiben Sie noch http oder https , wenn Sie eine Webadresse eingeben ? Aber betrachten wir die Adresse einmal im Detail:

  • http -- das verwendete Protokoll. Auch häufig zu sehen ist https
  • www.beispiel.com -- der host. Hinter dieser Zeichenkette verbirgt sich eine IP Adresse
  • 80 -- die Portnummer. Heute müssen wir diese Portnummer selten manuell eingeben.
  • artikel -- der Pfad zu der spezifischen Page
  • ?q=flutter&language=de -- ein query String, eine Abfrage Zeichenkette mit zwei Parametern. flutter und de.

Alles nach Protokoll

Für den Datenverkehr zwischen Ihrem Browser und dem Server wird das http Protokoll verwendet. Dieses Hypertext Transfer Protocol gibt einen Satz von Regeln vor, wie dies zu geschehen hat. Diese Regeln werden ähnlich wie bei einer Programmiersprache mit Schlüsselwörtern umgesetzt:

  • GET -- Daten bei dem Server anfordern
  • POST -- neue Daten an den Server senden
  • PUT -- Daten auf dem Server aktualisieren. Existierende Daten werden überschrieben
  • PATCH -- Daten auf dem Server teilweise ändern.
  • DELETE -- Daten auf dem Server löschen
Diese Schlüsselwörter, wenn Sie wollen Befehle, werden von Ihrem Client an den Server gesandt. Das wird im englischen als request (Anfrage) bezeichnet. Der Server verarbeitet Ihre Anfrage und sendet eine response (Antwort) an Sie. 

Es werden also Anfragen und Antworten zwischen Server und Client ausgetauscht. Beide Varianten haben einen header (Kopfbereich) und einen body. Der Header enthält Metadaten, während der body die eigentlich Daten transportiert.

Das war es für diesen Post. Im nächsten werden wir weiter auf das Thema eingehen. Bis bald.

Kommentare

Beliebte Posts aus diesem Blog

Material Design in Flutter Teil 2

Dart Basic: Listen Part 1

Listen in Dart (2021): Part 1 List.filled List.empty und List.add