So lösen Sie das Problem mit verstümmelten PHP-Anfragen
Lösung für verstümmelte PHP-Anfragen: Öffnen Sie zuerst die server.xml von Tomcat und legen Sie dann das Attribut des Elements „URIEncoding="UTF-8" fest.
Empfohlen: „PHP-Video-Tutorial“
Anfrage, Antwort: Probleme und Lösungen mit chinesischem verstümmeltem Code
Anfrage mit verstümmeltem Code bezieht sich auf: Die vom Browser an den Server gesendeten Anforderungsparameter enthalten chinesische Zeichen. Der vom Server erhaltene Wert des Anforderungsparameters ist verstümmelt.
Antwort verstümmelt bezieht sich auf: Die vom Server an den Browser gesendeten Daten enthalten verstümmelte Zeichen und der Browser zeigt verstümmelte Zeichen an. Unabhängig davon, ob die Anforderung verstümmelt ist Oder die Antwort verstümmelt ist, was tatsächlich durch die inkonsistenten Codierungsformate verursacht wird, die vom Client (Browser) und dem Server verwendet werden. Nehmen Sie als Beispiel die verstümmelte Anfrage: Der Browser sendet eine Anfrage an den Server. Da die Kommunikation zwischen dem Browser und dem Server im Wesentlichen ein Socket-Stream ist, müssen die Anfrageparameter (Zeichen) zunächst in Bytes umgewandelt werden, was dem Codierungsprozess entspricht . Der Server empfängt die Anforderungsparameter, wird dekodiert (Bytes in Zeichen umgewandelt) und dann in das Anforderungsobjekt gekapselt. Wenn die Codierung des Clients nicht mit der Decodierung des Servers übereinstimmt, wird der durch die Anforderung erhaltene Wert des Anforderungsparameters verstümmelt.
Lösung:
1. Antwort verstümmelte Zeichen
Die vom Server an den Browser gesendeten Daten werden standardmäßig gemäß ISO-8859-1 codiert. Nachdem der Browser die Daten empfangen hat, werden sie entsprechend decodiert und angezeigt Wenn der Standard-Dekodierungszeichensatz des Browsers nicht ISO-8859-1 ist, werden verstümmelte Zeichen angezeigt.
Bei verstümmelten Antworten müssen Sie lediglich einen Codierungszeichensatz auf der Serverseite angeben und dann den Browser anweisen, gemäß diesem Zeichensatz zu decodieren. Es gibt drei Möglichkeiten:
1. A. Legen Sie die serverseitige Codierung fest
response.setCharacterEncoding("utf-8");
Die Standardeinstellung ist ISO-8859-1; diese Methode muss vor Response.getWriter festgelegt werden ()
B. Benachrichtigen Sie den Browser über das vom Server gesendete Datenformat. Response.setHeader("contentType", "text/html; charset=utf-8");
Das vom Server gesendete Datenformat
Response.setContentType("text/html; charset=utf-8");
entspricht Response.setHeader("contentType", "text/html; charset=utf-8" ); Es wird tatsächlich Response.setCharacterEncoding( „utf-8“) überschreiben. Während der Entwicklung müssen Sie nur
B festlegen ");
3. A. Stellen Sie die serverseitige Kodierung ein
response.setCharacterEncoding("utf-8");
B. Der Browser verwendet utf-8 für die Dekodierung
Zusammenfassung: Einstellungen:
A. Stellen Sie die serverseitige Codierung ein
response.setCharacterEncoding("utf-8");
B Benachrichtigen Sie den Browser über das vom Server gesendete Datenformat
response.setContentType("text/html;charset=utf -8");
C. Der Browser verwendet utf-8 zum Dekodieren
So habe ich es für alle Fälle eingerichtet;
2. Die Anfrage ist verstümmelt.
Da Es gibt drei Möglichkeiten, über den Browser darauf zuzugreifen: Geben Sie direkt die URL in die Adressleiste ein, um darauf zuzugreifen, klicken Sie auf den Hyperlink auf der Seite, um darauf zuzugreifen, und senden Sie das Formular ab, um darauf zuzugreifen. Der Browser der ersten Zugriffsmethode codiert die Parameter standardmäßig gemäß UTF-8, und die Browser der beiden letztgenannten Zugriffsmethoden codieren die Parameter gemäß der Anzeigecodierung der aktuellen Seite. Daher müssen Sie für die Anforderung verstümmelter Zeichen nur das entsprechende Decodierungsformat auf der Serverseite festlegen. Aufgrund unterschiedlicher Zugriffsmethoden verfügen Browser auch über unterschiedliche Kodierungsformate für Parameter. Um die Verarbeitung zu erleichtern, muss der Zugriff über Hyperlinks und Formulare ebenfalls im UTF-8-Format erfolgen. Das heißt, die Kodierung zur Anzeige der aktuellen Seite muss ebenfalls UTF-8 verwenden. 8, also durchsuchen Der Prozessor verwendet einheitlich UTF-8 zum Codieren von Parametern.
A. Post-Methode
Die Post-Methode gehört zur Formularübermittlung und die Parameter sind im Anforderungstext vorhanden.
request.setCharacterEncoding("utf-8")
B get-Methode
Die von der get-Methode übermittelten Parameter folgen der URL in der Anforderungszeile und der Server dekodiert sie gemäß der Standard-ISO-8859-1 . Diesmal ist es gelöst. Es gibt zwei Möglichkeiten, verstümmelte Zeichen zu verursachen:
Methode 1: Ändern Sie die Standardcodierung der URI-Parameter auf der Serverseite.
Legen Sie in der server.xml von Tomcat das Attribut URIEncoding="UTF-8" fest. . (Dieses Attribut ist standardmäßig nicht festgelegt)
Zum Beispiel: Hinweis: 1. Legen Sie das Attribut useBodyEncodingForURI="true" des Elements fest, was bedeutet, dass der Anforderungstext und die URL dasselbe Codierungsformat verwenden. Durch Festlegen dieser beiden Attribute können Sie sowohl den verstümmelten Code in der Get-Methode als auch den verstümmelten Code in der Post-Methode lösen. 2. Geben Sie an, dass der Server GET und POST gemäß UTF-8 dekodiert, indem Sie den Server ändern.
Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem mit verstümmelten PHP-Anfragen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Die chinesische Bedeutung von request ist „request“. Es ist eine globale Variable in PHP und ein Array, das „$_POST“, „$_GET“ und „$_COOKIE“ enthält. Die Variable „$_REQUEST“ kann per POST oder GET übermittelte Daten und COOKIE-Informationen abrufen.

So verwenden Sie die Funktion urllib.request.urlopen() in Python3.x, um eine GET-Anfrage zu senden. Bei der Netzwerkprogrammierung müssen wir häufig Daten von einem Remote-Server erhalten, indem wir eine HTTP-Anfrage senden. In Python können wir die Funktion urllib.request.urlopen() im Modul urllib verwenden, um eine HTTP-Anfrage zu senden und die vom Server zurückgegebene Antwort zu erhalten. In diesem Artikel wird die Verwendung vorgestellt

Das Request-Objekt in PHP ist ein Objekt, das zur Verarbeitung von HTTP-Anfragen verwendet wird, die vom Client an den Server gesendet werden. Über das Request-Objekt können wir die Anforderungsinformationen des Clients abrufen, z. B. die Anforderungsmethode, die Anforderungsheaderinformationen, die Anforderungsparameter usw., um die Anforderung zu verarbeiten und zu beantworten. In PHP können Sie globale Variablen wie $_REQUEST, $_GET, $_POST usw. verwenden, um angeforderte Informationen zu erhalten, aber diese Variablen sind keine Objekte, sondern Arrays. Um Anfrageinformationen flexibler und bequemer bearbeiten zu können, können Sie dies tun

1. Erstellen Sie eine neue Datei namens request.js und importieren Sie Axios: importaxiosfrom'axios'; 2. Erstellen Sie eine Funktion namens request und exportieren Sie sie: Dadurch wird eine Funktion namens request erstellt und exportiert. Richten Sie eine neue Axios-Instanz mit einer Basis-URL ein . Um Timeout-Einstellungen in einer umschlossenen Axios-Instanz hinzuzufügen, können Sie beim Erstellen der Axios-Instanz die Timeout-Option übergeben. exportconstrequest=axios.create({baseURL:'https://example.

Die Rolle und Bedeutung von Request in PHP In der PHP-Programmierung ist Request ein Mechanismus zum Senden von Anfragen an den Webserver. Er spielt eine wichtige Rolle bei der Webentwicklung. Request wird hauptsächlich verwendet, um vom Client gesendete Daten abzurufen, z. B. Formularübermittlung, GET- oder POST-Anfrage usw. Über Request können die vom Benutzer eingegebenen Daten abgerufen und die Daten verarbeitet und beantwortet werden. In diesem Artikel werden die Rolle und Bedeutung von Request in PHP vorgestellt und spezifische Codebeispiele gegeben.

Request in PHP ist eine super globale Variable in PHP. Sie wird zum Sammeln von Daten verwendet, die von HTML-Formularen und Parametern in URLs übermittelt werden. Sie kann Daten aus GET- und POST-Anfragen abrufen ein assoziatives Array, wobei die Schlüssel die Namen der Formularfelder und die Werte die Werte der Formularfelder sind. Bei Verwendung der Variablen $_request sollten vom Benutzer eingegebene Daten immer validiert und gefiltert werden, um Sicherheitsprobleme zu vermeiden.

So verwenden Sie den Kontext, um die Überprüfung von Anforderungsparametern in Go zu implementieren. Einführung: Während des Back-End-Entwicklungsprozesses müssen wir häufig die Anforderungsparameter überprüfen, um die Rechtmäßigkeit der Parameter sicherzustellen. Die Go-Sprache stellt das Kontextpaket zur Verarbeitung von Anforderungskontextinformationen bereit. Ihr elegantes Design und ihre einfache Verwendung machen sie zu einem häufig verwendeten Werkzeug. In diesem Artikel wird erläutert, wie das Kontextpaket von Go zum Implementieren der Überprüfung von Anforderungsparametern verwendet wird, und es werden entsprechende Codebeispiele angegeben. Einführung in das Kontextpaket In Go wird das Kontextpaket zur Bereitstellung verwendet

So verwenden Sie das Modul urllib.request zum Senden von HTTP-Anfragen in Python3.x. Im eigentlichen Entwicklungsprozess müssen wir häufig HTTP-Anfragen senden, um mit dem Server zu interagieren. Python stellt das Modul urllib.request bereit, eines der Module in der Python-Standardbibliothek zur Verarbeitung von URL-Anfragen. In diesem Artikel erfahren Sie, wie Sie HTTP-Anfragen mit dem Modul urllib.request senden
