JavaWeb-Zusammenfassung (1)
Beim Erlernen des Client-Schnittstellendesigns von Webanwendungen wissen wir bereits, dass eine einfache Webanwendung einen Webserver, einen Web-Client-Browser, ein HTTP-Protokoll und ein statisches HTML-Dokument erfordert.
Webserver: empfängt Clientanfragen und gibt dann einige Ergebnisse an den Client zurück.
Browser: ermöglicht Benutzern das Anfordern einer Ressource auf dem Server und zeigt dem Benutzer die angeforderten Ergebnisse an 🎜>
HTML: teilt dem Benutzer mit, wie der Browser dem Benutzer Inhalte anzeigt; HTTP: das Protokoll, das für die Kommunikation zwischen dem Client und dem Server im Web verwendet wird; 🎜>HTTP ist ein HyperText Transfer Protocol, eine Reihe von Regeln für die Kommunikation von Computern im Netzwerk. In der TCP/IP-Architektur ist HTTP ein Protokoll der Anwendungsschicht und befindet sich auf der obersten Schicht des TCP/IP-Protokolls. HTTP ist ein zustandsloses Protokoll (zwischen dem Webbrowser [Client] und dem Webserver ist keine dauerhafte Verbindung erforderlich). Der gesamte Prozess besteht darin, dass ein Client eine Anfrage (Request) an den Server sendet und der WEB-Server dann eine Antwort (Response) zurückgibt. Der Link wurde daraufhin geschlossen. HTTP folgt dem Anfrage/Antwort-Modell (Anfrage/Antwort), und alle Kommunikationsinteraktionen sind in einer Reihe von Anfrage- und Antwortmodellen strukturiert.
Die durch HTTP definierte Transaktionsverarbeitung besteht aus den folgenden vier Schritten: Der Client und der Webserver stellen eine Verbindung her
Der Client sendet eine HTTP-Anfrage
Der Server empfängt die Client-HTTP-Anfrage auf der Clientseite, generiert ein HTTP-Antwort-Postback und stellt eine Verbindung zwischen dem Client und dem Webserver her die Anforderungsinformationen
sobald die TCP-Verbindung hergestellt ist, sendet der Webbrowser einen Anforderungsbefehl an den Webserver. Das HTTP-Protokoll kapselt Anforderungsinformationen vom Client in eine HTTP-Anfrage, die eine Anforderungszeile, einen Anforderungsheader, einen Nachrichtentext und eine Leerzeile enthält, die den Anforderungsheader und den Nachrichtentext trennt.
Anforderungszeile: Die Anforderungszeile ist eine ASCII-Textzeile, bestehend aus drei Tags: angeforderte HTTP-Methode, angeforderte URL und HTTP-Version. Durch Leerzeichen getrennt In HTTP-Version 1.1 sind acht mögliche HTTP-Anfragemethoden definiert Ⅰ GET: Aufgrund des Abrufens von Ressourcen vom Server;Ⅱ POST: Da Daten an den Server gesendet werden und eine bestimmte URL-Verarbeitung erfordern;
Ⅲ HEAD: Wie bei der GET-Methode gibt der Server nur die Statuszeile und den Header zurück und gibt die Anfrage nicht zurück Dokument ;
Ⅶ CONNECT: Eine Methode, die dokumentiert, aber derzeit nicht implementiert ist und für die Tunnelverarbeitung reserviert ist.
Unter diesen Methoden werden die Methoden GET und POST am häufigsten verwendet. und mehrere andere Methoden werden von Webentwicklern nicht sehr häufig verwendet. Methode ist die Anfrage für diese MethodePOST
Geben Sie die URL in die Adressleiste des Browsers ein.
Klicken Sie auf den HTML-Link auf der aktuellen Webseite.Legen Sie die Methode= des Formulars fest Geben Sie im HTML-Formular „GET“ ein oder nicht (die Standardeinstellung ist die Übermittlung der GET-Methode) und senden Sie das Formular
GETGET
wird normalerweise zum Versenden privater Nachrichten oder großer Nachrichtenmengen oder zum Hochladen von Dateien verwendet. Wenn eine Anwendung Daten ändern oder hinzufügen muss und eine Anfrage über HTTP sendet, sollte die POST-Methode verwendet werden.
Anfrage-Header:
Das HTTP-Protokoll verwendet den HTTP-Header, um die Metainformationen der Anfrage zu übertragen /value durch einen Doppelpunkt getrennt. Ja, dem Doppelpunkt steht der Name des HTTP-Headers, gefolgt vom HTTP-Wert. Allgemeine Anforderungsheader bestehen aus Benutzeragenteninformationen, akzeptablen Formaten, Sprachen und Inhaltskodierung. Diese Informationen werden verwendet, um dem Server mitzuteilen, was der Client ist, welches Format der Feedbackinformationen der Client erhalten möchte usw.
Leere Zeile:
Senden Sie Wagenrücklauf und Exit, um den Server darüber zu informieren, dass keine weiteren Anforderungsheader vorhanden sind.
Nachrichtentext:
Wenn die HTTP-Anfrage eine Abfragezeichenfolge enthält, es sich um eine GET-Methode handelt und die Abfragezeichenfolge oder die Formulardaten an die Anforderungszeile angehängt werden, ist kein Inhalt vorhanden im Nachrichtentext; Im Fall der POST-Methode werden die Abfragezeichenfolge oder Formulardaten zum Nachrichtentext hinzugefügt.
Eine Antwortnachricht zurücksenden
Der Webserver analysiert die Anfrage, findet und liest die angegebene Ressource. Geben Sie Dateien und andere Informationen als HTTP-Antwort an den Client zurück. Die HTTP-Antwort umfasst: Statuszeile, Antwortheader, Nachrichtentext und eine Leerzeile, die die Nachrichtenheader und Antwortheader trennt.
Statuszeile:
Jede HTTP-Antwort beginnt mit einer Statuszeile. Die Statuszeile besteht aus der HTTP-Protokollversion, dem Antwortstatuscode und der Antwortbeschreibung, getrennt durch Leerzeichen.
Der Antwortstatuscode ist eine dreistellige Zahl, die in die folgenden Gruppen unterteilt ist:
Ⅰ 100~199: Information, Anfrage erhalten, Bearbeitung fortsetzen;
Ⅱ 200~299: Erfolg, das Verhalten wurde erfolgreich akzeptiert, verstanden und übernommen; Ⅲ 300~399: Umleiten, um die Anfrage abzuschließen, müssen weitere Aktionen durchgeführt werden; 400~499: Clientfehler, die Anfrage enthält einen Syntaxfehler oder die Anfrage kann nicht implementiert werden
Ⅴ 500~599: Serverfehler, der Server kann eine offensichtlich ungültige Anfrage nicht implementieren; Antwortstatuscode Alle verfügen über zugehörige String-Antwortbeschreibungen.
Antwortheader:
Der Antwortheader ist wie der Anforderungsheader ebenfalls ein durch einen Doppelpunkt getrenntes Name/Wert-Paar. Vor dem Doppelpunkt steht der Name des HTTP-Headers, gefolgt von der Wert des HTTP-Headers. Typische Antwortheader umfassen Inhaltsbeschreibung, Inhaltslänge, Zeitstempel, Serverinformationen und den Zeitpunkt der letzten Änderung des Inhalts. Mithilfe dieser Informationen kann der Client ermitteln, welche Inhalte gesendet wurden, wie groß die Inhalte sind und ob die Daten neuer als die vorherige Antwort sind.
Unter den Antwortheadern ist Content-Type der wichtigste HTTP-Header, der den MIME-Typ angibt. Der MIME-Typ teilt dem Browser mit, welche Art von Daten er akzeptieren möchte, sodass der Browser weiß, wie er die Daten anzeigen soll. Dieser Wert ist normalerweise mit „Accept“ im HTTP-Anforderungsheader verknüpft.
Leerzeile:
Auf den letzten Antwortheader folgt eine Leerzeile, die einen Wagenrücklauf und eine Rücktaste sendet, was darauf hinweist, dass dort Es folgen keine weiteren Antwortheader.
Nachrichtentext:
HTML-Dokument, das an den Kunden gesendet werden soll, oder anderer anzuzeigender Inhalt usw. Der Webserver fügt die an den Client gesendeten Dokumentinformationen in den Nachrichtentext ein.
Schließen Sie die Verbindung
Nachdem die HTTP-Antwort den Client erreicht hat, analysiert der Browser zunächst die Statuszeile in der HTTP-Antwort, um den Statuscode zu sehen, der angibt, ob die Anfrage erfolgreich ist. Analysieren Sie dann jeden Antwortheader, lesen Sie den Antwortnachrichtentext und stellen Sie den Nachrichtentext auf der Browserseite dar.
Ein HTML-Dokument enthält möglicherweise andere Ressourcen, die geladen werden müssen, und stellt zusätzliche Anforderungen für diese Ressourcen. Dieser Prozess kann so lange wiederholt werden, bis alle Daten im angegebenen Antwortheader enthalten sind Das Format wird auf der Seite wiederhergestellt. Nachdem die Datenübertragung abgeschlossen ist, schließt der Server die Verbindung, bei der es sich um ein zustandsloses Protokoll handelt.