Heim Backend-Entwicklung Python-Tutorial Detaillierte Erläuterung des HeaderDict of Bottle-Quellcodes

Detaillierte Erläuterung des HeaderDict of Bottle-Quellcodes

Jul 24, 2017 am 09:20 AM
bottle 源码

Alle Antworten auf Rahmenanfragen basieren auf einem Prinzip http-Anfrage --> wsgi-Schnittstelle (eigentlich ist die von einer benutzerdefinierten Implementierung im Framework implementierte Funktion unten gekapselt) --> Die Erläuterung der WSGI-Schnittstelle finden Sie im Tutorial von Liao Und verwandeln Sie den Wert in ein iterierbares Objekt und den Wert in ein Listenobjekt, dh Wert = [Wert]. Der WSGI-Standard definiert, dass ein String-Typ in einen Listentyp konvertiert werden soll, was ihm eine bessere Darstellung verleiht. Der Server muss nicht alles auf einmal ausgeben, sondern kann Yield verwenden, um die Ausgabe zu steuern, um zu vermeiden, dass zu viel auf einmal ausgegeben wird. Alles in allem implementiert diese Klasse, die dict kapselt, zwei Funktionen:

class HeaderDict(dict):''' A dictionary with case insensitive (titled) keys.        You may add a list of strings to send multible headers with the same name.'''def __setitem__(self, key, value):return dict.__setitem__(self,key.title(), value) #注意这里使用title函数,它能将每个单词的开头大写def __getitem__(self, key):return dict.__getitem__(self,key.title())def __delitem__(self, key):return dict.__delitem__(self,key.title())def __contains__(self, key):return dict.__contains__(self,key.title())def items(self):""" Returns a list of (key, value) tuples """for key, values in dict.items(self):if not isinstance(values, list):
                values = [values]for value in values:yield (key, str(value))                def add(self, key, value):""" Adds a new header without deleting old ones """if isinstance(value, list):for v in value:self.add(key, v) #注意这里使用了递归elif key in self:if isinstance(self[key], list):self[key].append(value)else:self[key] = [self[key], value]else:          self[key] = [value]
Nach dem Login kopieren
Wert in Liste umwandeln, Datendarstellung optimieren

  1. Den ersten Buchstaben von konvertieren Das Wort im Schlüssel wird groß geschrieben

  2. Die oben genannten drei Funktionen implementieren jeweils interne Serverfehler, Umleitung und Dateidownload. Diese Funktion zum Herunterladen von Dateien implementiert die Beurteilung des Dateityps, die Einstellung des Inhaltstyps, die Beurteilung der Dateiberechtigungen, das Abrufen des Dateistatus usw. Diese Funktion ist dennoch sehr einfach und kann individuell angepasst werden.

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des HeaderDict of Bottle-Quellcodes. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Die Anwendungspraxis von Python beim Schutz von Software-Quellcode Die Anwendungspraxis von Python beim Schutz von Software-Quellcode Jun 29, 2023 am 11:20 AM

Die Anwendungspraxis von Python beim Schutz von Software-Quellcode

So zeigen Sie den Quellcode von Tomcat in der Idee an So zeigen Sie den Quellcode von Tomcat in der Idee an Jan 25, 2024 pm 02:01 PM

So zeigen Sie den Quellcode von Tomcat in der Idee an

Wie kann der Quellcode von PHP-Code im Browser angezeigt werden, ohne dass er interpretiert und ausgeführt wird? Wie kann der Quellcode von PHP-Code im Browser angezeigt werden, ohne dass er interpretiert und ausgeführt wird? Mar 11, 2024 am 10:54 AM

Wie kann der Quellcode von PHP-Code im Browser angezeigt werden, ohne dass er interpretiert und ausgeführt wird?

Leichtes Python-Webframework: Flaschenbibliothek! Leichtes Python-Webframework: Flaschenbibliothek! Apr 13, 2023 pm 02:10 PM

Leichtes Python-Webframework: Flaschenbibliothek!

Kann Vue Quellcode anzeigen? Kann Vue Quellcode anzeigen? Jan 05, 2023 pm 03:17 PM

Kann Vue Quellcode anzeigen?

Eine umfassende Anleitung zum Erlernen und Anwenden des Golang-Framework-Quellcodes Eine umfassende Anleitung zum Erlernen und Anwenden des Golang-Framework-Quellcodes Jun 01, 2024 pm 10:31 PM

Eine umfassende Anleitung zum Erlernen und Anwenden des Golang-Framework-Quellcodes

PHP-Quellcode-Fehler: Lösung des Indexfehlerproblems PHP-Quellcode-Fehler: Lösung des Indexfehlerproblems Mar 10, 2024 am 11:12 AM

PHP-Quellcode-Fehler: Lösung des Indexfehlerproblems

Website zum Online-Ansehen des Quellcodes Website zum Online-Ansehen des Quellcodes Jan 10, 2024 pm 03:31 PM

Website zum Online-Ansehen des Quellcodes

See all articles