Environment-Klasse: Difference between revisions
No edit summary |
No edit summary |
||
(49 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
Konkret handelt es sich bei der Environment-Klasse um die Python-Klasse WavecdnEnvironmentV1. Sie ist bei der [[Erweiterung schreiben|Programmierung von Erweiterungen]] relevant. Im folgenden findet sich die Dokumentation der Klassenmethoden. Die Spalte 'Verfügbarkeit' gibt die [[Anfragenmodell|Schritte der Anfragenabarbeitung]] an, in denen die jeweilige Methode verfügbar ist. | |||
{| class="table-wavecdn" cellspacing="0" | {| class="table-wavecdn" cellspacing="0" | ||
!Methode | !Methode | ||
!style="width:600px"|Beschreibung | |||
!Verfügbarkeit | !Verfügbarkeit | ||
|- | |||
|get(name) | |||
|Gibt eine die benutzerdefinierte Variable mit dem angegebenen Namen zurück. Benutzerdefinierte Variablen behalten Ihre Gültigkeit über alle Anfragenschritte hinweg. D.h. auf Variablen, die in wavecdn_receive() gesetzt wurden, können in späteren Schritten abgerufen werden. | |||
| | |||
* wavecdn_receive | |||
* wavecdn_hit | |||
* wavecdn_miss | |||
* wavecdn_pass | |||
* wavecdn_fetch | |||
* wavecdn_deliver | |||
|- | |||
|set(name, value) | |||
|Setzt die benutzerdefinierte Variable mit dem angegebenen Namen und dem angegebenen Wert. Die benutzerdefinierte Variable muss nicht im selben Schritt, sondern kann auch in vorherigen Schritten gesetzt worden sein. | |||
| | |||
* wavecdn_receive | |||
* wavecdn_hit | |||
* wavecdn_miss | |||
* wavecdn_pass | |||
* wavecdn_fetch | |||
* wavecdn_deliver | |||
|- | |- | ||
|get_client_ip() | |get_client_ip() | ||
|Gibt die IP vom Webuser zurück. | |Gibt die IP vom Webuser zurück. | ||
Zum Beispiel: '185.22.221.5' | |||
| | | | ||
* wavecdn_receive | * wavecdn_receive | ||
* wavecdn_hit | * wavecdn_hit | ||
* wavecdn_miss | * wavecdn_miss | ||
* wavecdn_pass | |||
* wavecdn_fetch | |||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |- | ||
Line 20: | Line 43: | ||
| | | | ||
* wavecdn_receive | * wavecdn_receive | ||
* wavecdn_hit | * wavecdn_hit | ||
* wavecdn_miss | * wavecdn_miss | ||
* wavecdn_pass | |||
* wavecdn_fetch | |||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |- | ||
|get_request_method() | |get_request_method() | ||
|Gibt die Methode der Anfrage vom Webuser zurück. Zum Beispiel 'GET' oder 'POST' | |Gibt die Methode der Anfrage vom Webuser zurück. | ||
Zum Beispiel: 'HEAD', 'GET' oder 'POST' | |||
| | | | ||
* wavecdn_receive | * wavecdn_receive | ||
* wavecdn_hit | * wavecdn_hit | ||
* wavecdn_miss | * wavecdn_miss | ||
* wavecdn_pass | |||
* wavecdn_fetch | |||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |- | ||
| | |get_request_uri() | ||
|Gibt die vom Webuser angefragte | |Gibt die vom Webuser angefragte URI zurück. | ||
Zum Beispiel: '/main/index.php?site=home' | |||
| | | | ||
* wavecdn_receive | * wavecdn_receive | ||
* wavecdn_hit | * wavecdn_hit | ||
* wavecdn_miss | * wavecdn_miss | ||
* wavecdn_pass | |||
* wavecdn_fetch | |||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |||
|set_request_uri(uri) | |||
|Ändert die angefragte URI des Webusers. | |||
| | |||
* wavecdn_receive | |||
|- | |- | ||
|get_request_path() | |get_request_path() | ||
|Gibt die vom Webuser angefragte URL ohne Query-String zurück. | |Gibt die vom Webuser angefragte URL ohne Query-String zurück. | ||
Zum Beispiel: '/main/index.php' | |||
| | | | ||
* wavecdn_receive | * wavecdn_receive | ||
* wavecdn_hit | * wavecdn_hit | ||
* wavecdn_miss | * wavecdn_miss | ||
* wavecdn_pass | |||
* wavecdn_fetch | |||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |- | ||
|get_request_query_string() | |get_request_query_string() | ||
|Gibt den Query-String aus der vom Webuser angefragten URL zurück. | |Gibt den Query-String aus der vom Webuser angefragten URL zurück. Wenn kein Query-String vorhanden ist, wird None zurückgegeben. | ||
Zum Beispiel: 'site=home' oder None | |||
| | | | ||
* wavecdn_receive | * wavecdn_receive | ||
* wavecdn_hit | |||
* wavecdn_miss | |||
* wavecdn_pass | |||
* wavecdn_fetch | * wavecdn_fetch | ||
* wavecdn_deliver | |||
|- | |||
|get_request_query_string_parameters() | |||
|Gibt ein Dictionary mit den Parametern des Query-Strings zurück. Wenn zwei Parameter den gleichen Namen haben, wird nur der erste in das Dictionary aufgenommen. Wenn kein Query-String vorhanden ist, wird ein leeres Dictionary zurückgegeben. | |||
Zum Beispiel: {'site': 'home'} | |||
| | |||
* wavecdn_receive | |||
* wavecdn_hit | * wavecdn_hit | ||
* wavecdn_miss | * wavecdn_miss | ||
* wavecdn_pass | |||
* wavecdn_fetch | |||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |- | ||
|get_request_query_string_parameter(name) | |get_request_query_string_parameter(name) | ||
|Gibt den Parameter mit dem angegebenen Namen aus dem Query-String zurück. | |Gibt den Wert vom Parameter mit dem angegebenen Namen aus dem Query-String zurück. Wenn es zwei Parameter mit dem angebenen Namen im Query-String gibt, wird der Wert vom ersten Parameter zurückgegeben. Wenn der angegebene Parameter nicht existiert, wird None zurückgegeben. | ||
| | | | ||
* wavecdn_receive | * wavecdn_receive | ||
* wavecdn_hit | * wavecdn_hit | ||
* wavecdn_miss | * wavecdn_miss | ||
* wavecdn_pass | |||
* wavecdn_fetch | |||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |- | ||
|get_request_headers() | |get_request_headers() | ||
|Gibt | |Gibt eine Liste mit den Headern der Anfrage vom Webuser zurück. | ||
Zum Beispiel: | |||
[['Accept-Encoding', 'gzip'], ['Host', 'example.wavecdn.net']] | |||
| | | | ||
* wavecdn_receive | * wavecdn_receive | ||
* wavecdn_hit | * wavecdn_hit | ||
* wavecdn_miss | * wavecdn_miss | ||
* wavecdn_pass | |||
* wavecdn_fetch | |||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |||
|set_request_headers(headers) | |||
|Ersetzt nachträglich in der Webuser-Anfrage alle Header. Der einzige Original-Header, der immer bestehen bleibt und seinen Originalwert beibehält, ist der Host-Header. Als Parameter wird eine Liste von Headern erwartet. Siehe get_request_headers() für das erwartete Format. | |||
| | |||
* wavecdn_receive | |||
|- | |- | ||
|get_request_header(name) | |get_request_header(name) | ||
|Gibt den | |Gibt den ersten Header aus der Webuser-Anfrage zurück, der bei Ignorierung von Groß- und Kleinschreibung den gleichen Namen hat. Wenn der Header nicht existiert, wird None zurückgegeben. | ||
| | | | ||
* wavecdn_receive | * wavecdn_receive | ||
* wavecdn_hit | * wavecdn_hit | ||
* wavecdn_miss | * wavecdn_miss | ||
* wavecdn_pass | |||
* wavecdn_fetch | |||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |- | ||
| | |set_request_header(name) | ||
| | |Setzt nachträglich in der Webuser-Anfrage den Header mit dem angegebenen Namen. Alle Header, die bei Ignorierung von Groß- und Kleinschreibung den gleichen Namen haben, werden überschrieben. Am Ende gibt es genau einen Header mit dem angegebenen Namen. | ||
| | |||
* wavecdn_receive | |||
|- | |||
|unset_request_header(name) | |||
|Entfernt nachträglich aus der Webuser-Anfrage bei Ignorierung von Groß- und Kleinschreibung alle Header mit dem angegebenen Namen. | |||
| | | | ||
* wavecdn_receive | * wavecdn_receive | ||
* | |- | ||
|get_backend_request_headers() | |||
|Gibt eine Liste mit den Headern aus der Anfrage zurück, die WaveCDN an das Backend (Origin/Storage) schicken wird. Standardmäßig handelt es sich hierbei fast ausschließlich um die Header der Webuser-Anfrage, die auch für die Anfrage an das Backend verwendet werden. | |||
Zum Beispiel: [['Accept-Encoding', 'gzip'], ['Host', 'example.wavecdn.net']] | |||
| | |||
* wavecdn_hit | |||
* wavecdn_miss | |||
* wavecdn_pass | |||
|- | |||
|set_backend_request_headers(headers) | |||
|Ersetzt in der Anfrage, die WaveCDN an das Backend (Origin/Storagen) schicken wird, alle Header. Als Parameter wird eine Liste von Headern erwartet. | |||
| | |||
* wavecdn_hit | |||
* wavecdn_miss | |||
* wavecdn_pass | |||
|- | |||
|get_backend_request_header(name) | |||
|Gibt den Header mit dem angegebenen Namen aus Anfrage zurück, die WaveCDN an das Backend (Origin/Storage) schicken wird. Wenn der Header nicht existiert, wird None zurückgegeben. | |||
| | |||
* wavecdn_hit | |||
* wavecdn_miss | |||
* wavecdn_pass | |||
|- | |||
|set_backend_request_header(name, value) | |||
|Setzt den Header mit dem angegebenen Namen und Wert in der Anfrage, die WaveCDn an das Backend (Origin/Storage) schicken wird. | |||
| | |||
* wavecdn_hit | |||
* wavecdn_miss | |||
* wavecdn_pass | |||
|- | |||
|unset_backend_request_header(name) | |||
|Entfernt aus der Anfrage, die WaveCDN an das Backend schicken wird, bei Ignorierung von Groß- und Kleinschreibung alle Header mit dem angegebenen Namen. | |||
| | |||
* wavecdn_hit | * wavecdn_hit | ||
* wavecdn_miss | * wavecdn_miss | ||
* | * wavecdn_pass | ||
|- | |||
|get_backend_response_headers() | |||
|Gibt eine Liste mit den Headern aus der Origin/Storage-Antwort zurück. | |||
Zum Beispiel: [['Set-Cookie', 'sessionid=f938a47a9ef3259860a8b7c4; path=/']] | |||
| | |||
* wavecdn_fetch | |||
|- | |||
|set_backend_response_headers(headers) | |||
|Ersetzt nachträglich in der Antwort vom Origin/Storage alle Header. Als Parameter wird eine Liste von Headern erwartet. | |||
| | |||
* wavecdn_fetch | |||
|- | |||
|get_backend_response_header(name) | |||
|Gibt den Header mit dem angegebenen Namen aus der Origin/Storage-Antwort zurück. Wenn der Header nicht existiert, wird None zurückgegeben. | |||
| | |||
* wavecdn_fetch | |||
|- | |- | ||
|set_backend_response_header(name, value) | |set_backend_response_header(name, value) | ||
|Setzt den Header mit dem angegebenen Namen und Wert in der Origin/Storage-Antwort. Sinnvoll, wenn Header noch vor dem Caching hinzugefügt werden sollen. | |Setzt den Header mit dem angegebenen Namen und Wert in der Origin/Storage-Antwort. Sinnvoll, wenn Header noch vor dem Caching hinzugefügt werden sollen. | ||
| | | | ||
* wavecdn_fetch | * wavecdn_fetch | ||
* | |- | ||
|unset_backend_response_header(name) | |||
|Entfernt nachträglich aus der Origin/Storage-Antwort bei Ignorierung von Groß- und Kleinschreibung alle Header mit dem angegebenen Namen. | |||
| | |||
* wavecdn_fetch | |||
|- | |||
|get_response_headers() | |||
|Gibt ein Dictionary mit den Headern der Antwort zurück, die WaveCDN an den Webuser schicken wird. | |||
| | |||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |- | ||
| | |set_response_headers(headers) | ||
| | |Ersetzt nachträglich in der Antwort, die WaveCDN zurück an den Webuser schicken wird, alle Header. Als Parameter wird eine Liste von Headern erwartet. | ||
| | | | ||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |- | ||
|get_response_header(name) | |get_response_header(name) | ||
|Gibt den | |Gibt den Header mit dem angegebenen Namen aus der Antwort zurück, die WaveCDN an den Webuser schicken wird. Wenn der Header nicht existiert, wird None zurückgegeben. | ||
| | | | ||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |- | ||
Line 127: | Line 243: | ||
|Setzt den Header mit dem angegebenen Namen und Wert in der Anwort, die WaveCDN an den Webuser schicken wird. | |Setzt den Header mit dem angegebenen Namen und Wert in der Anwort, die WaveCDN an den Webuser schicken wird. | ||
| | | | ||
* wavecdn_deliver | * wavecdn_deliver | ||
|- | |||
|unset_response_header(name) | |||
|Entfernt aus der Antwort, die WaveCDN an den Webuser schicken wird, bei Ignorierung von Groß- und Kleinschreibung alle Header mit dem angegebenen Namen. | |||
| | |||
* wavecdn_deliver | |||
|- | |||
|get_response_status_code() | |||
|Gibt den HTTP-Code der Antwort zurück, die WaveCDN an den Webuser schicken wird. Es handelt sich dabei um einen Integer. | |||
| | |||
* wavecdn_deliver | |||
|- | |||
|set_response_status_code(code) | |||
|Setzt den HTTP-Code der Antwort, die WaveCDN an den Webuser schicken wird. Beim Parameter muss es sich um einen Integer handeln. | |||
| | |||
* wavecdn_deliver | |||
|- | |||
|} | |} |
Latest revision as of 11:13, 21 July 2014
Konkret handelt es sich bei der Environment-Klasse um die Python-Klasse WavecdnEnvironmentV1. Sie ist bei der Programmierung von Erweiterungen relevant. Im folgenden findet sich die Dokumentation der Klassenmethoden. Die Spalte 'Verfügbarkeit' gibt die Schritte der Anfragenabarbeitung an, in denen die jeweilige Methode verfügbar ist.
Methode | Beschreibung | Verfügbarkeit |
---|---|---|
get(name) | Gibt eine die benutzerdefinierte Variable mit dem angegebenen Namen zurück. Benutzerdefinierte Variablen behalten Ihre Gültigkeit über alle Anfragenschritte hinweg. D.h. auf Variablen, die in wavecdn_receive() gesetzt wurden, können in späteren Schritten abgerufen werden. |
|
set(name, value) | Setzt die benutzerdefinierte Variable mit dem angegebenen Namen und dem angegebenen Wert. Die benutzerdefinierte Variable muss nicht im selben Schritt, sondern kann auch in vorherigen Schritten gesetzt worden sein. |
|
get_client_ip() | Gibt die IP vom Webuser zurück.
Zum Beispiel: '185.22.221.5' |
|
get_request_ssl() | Gibt in Form eines Boolean zurück, ob der Webuser bei der Anfrage SSL genutzt hat oder nicht. |
|
get_request_method() | Gibt die Methode der Anfrage vom Webuser zurück.
Zum Beispiel: 'HEAD', 'GET' oder 'POST' |
|
get_request_uri() | Gibt die vom Webuser angefragte URI zurück.
Zum Beispiel: '/main/index.php?site=home' |
|
set_request_uri(uri) | Ändert die angefragte URI des Webusers. |
|
get_request_path() | Gibt die vom Webuser angefragte URL ohne Query-String zurück.
Zum Beispiel: '/main/index.php' |
|
get_request_query_string() | Gibt den Query-String aus der vom Webuser angefragten URL zurück. Wenn kein Query-String vorhanden ist, wird None zurückgegeben.
Zum Beispiel: 'site=home' oder None |
|
get_request_query_string_parameters() | Gibt ein Dictionary mit den Parametern des Query-Strings zurück. Wenn zwei Parameter den gleichen Namen haben, wird nur der erste in das Dictionary aufgenommen. Wenn kein Query-String vorhanden ist, wird ein leeres Dictionary zurückgegeben.
Zum Beispiel: {'site': 'home'} |
|
get_request_query_string_parameter(name) | Gibt den Wert vom Parameter mit dem angegebenen Namen aus dem Query-String zurück. Wenn es zwei Parameter mit dem angebenen Namen im Query-String gibt, wird der Wert vom ersten Parameter zurückgegeben. Wenn der angegebene Parameter nicht existiert, wird None zurückgegeben. |
|
get_request_headers() | Gibt eine Liste mit den Headern der Anfrage vom Webuser zurück.
Zum Beispiel: [['Accept-Encoding', 'gzip'], ['Host', 'example.wavecdn.net']] |
|
set_request_headers(headers) | Ersetzt nachträglich in der Webuser-Anfrage alle Header. Der einzige Original-Header, der immer bestehen bleibt und seinen Originalwert beibehält, ist der Host-Header. Als Parameter wird eine Liste von Headern erwartet. Siehe get_request_headers() für das erwartete Format. |
|
get_request_header(name) | Gibt den ersten Header aus der Webuser-Anfrage zurück, der bei Ignorierung von Groß- und Kleinschreibung den gleichen Namen hat. Wenn der Header nicht existiert, wird None zurückgegeben. |
|
set_request_header(name) | Setzt nachträglich in der Webuser-Anfrage den Header mit dem angegebenen Namen. Alle Header, die bei Ignorierung von Groß- und Kleinschreibung den gleichen Namen haben, werden überschrieben. Am Ende gibt es genau einen Header mit dem angegebenen Namen. |
|
unset_request_header(name) | Entfernt nachträglich aus der Webuser-Anfrage bei Ignorierung von Groß- und Kleinschreibung alle Header mit dem angegebenen Namen. |
|
get_backend_request_headers() | Gibt eine Liste mit den Headern aus der Anfrage zurück, die WaveCDN an das Backend (Origin/Storage) schicken wird. Standardmäßig handelt es sich hierbei fast ausschließlich um die Header der Webuser-Anfrage, die auch für die Anfrage an das Backend verwendet werden.
Zum Beispiel: [['Accept-Encoding', 'gzip'], ['Host', 'example.wavecdn.net']] |
|
set_backend_request_headers(headers) | Ersetzt in der Anfrage, die WaveCDN an das Backend (Origin/Storagen) schicken wird, alle Header. Als Parameter wird eine Liste von Headern erwartet. |
|
get_backend_request_header(name) | Gibt den Header mit dem angegebenen Namen aus Anfrage zurück, die WaveCDN an das Backend (Origin/Storage) schicken wird. Wenn der Header nicht existiert, wird None zurückgegeben. |
|
set_backend_request_header(name, value) | Setzt den Header mit dem angegebenen Namen und Wert in der Anfrage, die WaveCDn an das Backend (Origin/Storage) schicken wird. |
|
unset_backend_request_header(name) | Entfernt aus der Anfrage, die WaveCDN an das Backend schicken wird, bei Ignorierung von Groß- und Kleinschreibung alle Header mit dem angegebenen Namen. |
|
get_backend_response_headers() | Gibt eine Liste mit den Headern aus der Origin/Storage-Antwort zurück.
Zum Beispiel: [['Set-Cookie', 'sessionid=f938a47a9ef3259860a8b7c4; path=/']] |
|
set_backend_response_headers(headers) | Ersetzt nachträglich in der Antwort vom Origin/Storage alle Header. Als Parameter wird eine Liste von Headern erwartet. |
|
get_backend_response_header(name) | Gibt den Header mit dem angegebenen Namen aus der Origin/Storage-Antwort zurück. Wenn der Header nicht existiert, wird None zurückgegeben. |
|
set_backend_response_header(name, value) | Setzt den Header mit dem angegebenen Namen und Wert in der Origin/Storage-Antwort. Sinnvoll, wenn Header noch vor dem Caching hinzugefügt werden sollen. |
|
unset_backend_response_header(name) | Entfernt nachträglich aus der Origin/Storage-Antwort bei Ignorierung von Groß- und Kleinschreibung alle Header mit dem angegebenen Namen. |
|
get_response_headers() | Gibt ein Dictionary mit den Headern der Antwort zurück, die WaveCDN an den Webuser schicken wird. |
|
set_response_headers(headers) | Ersetzt nachträglich in der Antwort, die WaveCDN zurück an den Webuser schicken wird, alle Header. Als Parameter wird eine Liste von Headern erwartet. |
|
get_response_header(name) | Gibt den Header mit dem angegebenen Namen aus der Antwort zurück, die WaveCDN an den Webuser schicken wird. Wenn der Header nicht existiert, wird None zurückgegeben. |
|
set_response_header(name, value) | Setzt den Header mit dem angegebenen Namen und Wert in der Anwort, die WaveCDN an den Webuser schicken wird. |
|
unset_response_header(name) | Entfernt aus der Antwort, die WaveCDN an den Webuser schicken wird, bei Ignorierung von Groß- und Kleinschreibung alle Header mit dem angegebenen Namen. |
|
get_response_status_code() | Gibt den HTTP-Code der Antwort zurück, die WaveCDN an den Webuser schicken wird. Es handelt sich dabei um einen Integer. |
|
set_response_status_code(code) | Setzt den HTTP-Code der Antwort, die WaveCDN an den Webuser schicken wird. Beim Parameter muss es sich um einen Integer handeln. |
|