HSL 2.0-Framework
Beschreibung des Frameworks
Öffentliche Methoden | Aufstellung aller Elemente
hsl20_4_http_client.hsl20_4_http_client.Client Klassenreferenz

Alle Methoden des HTTP-Clients. Mehr ...

Öffentliche Methoden

def __init__ (self, framework, context_map)
 Konstruktor. Mehr ...
 
def set_url (self, method, url, http_version=1)
 Setzt die URL, die aufgerufen werden soll. Mehr ...
 
def set_header (self, key, value)
 Setzt einen Header. Mehr ...
 
def set_body (self, data, content_type=None)
 Setzt den Body. Mehr ...
 
def set_on_data (self, callback)
 Legt eine Callback-Methode für die Antwort fest. Mehr ...
 
def set_on_error (self, callback)
 Legt eine Callback-Methode für Fehler fest. Mehr ...
 
def start_request (self)
 Startet den HTTP-Abruf. Mehr ...
 

Ausführliche Beschreibung

Alle Methoden des HTTP-Clients.

Veraltet:
Diese Klasse sollte nicht mehr eingesetzt werden. Im Beispiel https_client WebRequest wird gezeigt, wie sie durch Standardmodule von Python ersetzt werden kann.

Dient zur Kommunikation mit einer Gegenstelle per HTTP.

Timeouts

Folgende Timeouts, bei deren Eintreten die Verbindung getrennt wird, sind zu beachten:

class mein_demo_modul(hsl20_4.BaseModule):
...
def get_demo_page(self):
client = self.FRAMEWORK.create_http_client()
client.set_url("GET", "http://www.example.net/")
client.set_on_data(self.on_example_data)
client.start_request()
def on_example_data(self, http_response):
if http_response.get_status_code()==200:
# Antwort auswerten
Zu beachten
Die Klasse arbeitet asynchron. Keine der angebotenen Methoden blockiert.

Beschreibung der Konstruktoren und Destruktoren

◆ __init__()

def hsl20_4_http_client.hsl20_4_http_client.Client.__init__ (   self,
  framework,
  context_map 
)

Konstruktor.

Warnung
Diese Klasse sollte nicht direkt instanziert werden.

Dokumentation der Elementfunktionen

◆ set_body()

def hsl20_4_http_client.hsl20_4_http_client.Client.set_body (   self,
  data,
  content_type = None 
)

Setzt den Body.

Wird nur bei z.B. POST und GET benötigt. Die Methode setzt außerdem den HTTP-Header "Content-length" auf Basis der unter data übergebenen Daten.

Parameter
datastring
Daten
content_typestring
Optional, setzt im Header den Content-Type der zu übermittelnden Daten (default: None) Hinweis zum default-Wert von Parameter content_type hinzugefügt

◆ set_header()

def hsl20_4_http_client.hsl20_4_http_client.Client.set_header (   self,
  key,
  value 
)

Setzt einen Header.

Zum Beispiel: set_header("Content-type", "text/html")
Es können mehrere Header definiert werden.

Parameter
keystring
Schlüssel des Headers
valuestring
Wert

◆ set_on_data()

def hsl20_4_http_client.hsl20_4_http_client.Client.set_on_data (   self,
  callback 
)

Legt eine Callback-Methode für die Antwort fest.

Die Methode wird aufgerufen, wenn die Gegenstelle die Anfrage vollständig beantwortet hat, oder wenn ein Fehler aufgetreten ist.

Die Callback-Methode benötigt folgende Parameter:

Parameter
callbackfunction
Callback-Methode

◆ set_on_error()

def hsl20_4_http_client.hsl20_4_http_client.Client.set_on_error (   self,
  callback 
)

Legt eine Callback-Methode für Fehler fest.

Die Callback-Methode wird aufgerufen, wenn während der Kommunikation ein Fehler oder Timeout aufgetreten ist.

Die Callback-Methode benötigt folgende Parameter:

  • exception exception
    Die aufgetretene Exception. Liefert None, wenn ein unbekannter Fehler aufgetreten ist.
Parameter
callbackfunction
Callback-Methode

◆ set_url()

def hsl20_4_http_client.hsl20_4_http_client.Client.set_url (   self,
  method,
  url,
  http_version = 1 
)

Setzt die URL, die aufgerufen werden soll.

Parameter
methodstring
Abruf-Methode, die für die URL verwendet werden soll (z.B. GET).
urlstring
URL (z.B. http://www.example.net/)
http_versionint
Optional. HTTP-Version.
  • 1 => HTTP/1.0 (default)
  • 2 => HTTP/1.1
Zu beachten
Die übergebende URL muss korrekt kodiert sein.
Ausnahmebehandlung
ValueError
Wird ausgelöst, wenn eine ungültige URL übergeben wurde.
ValueError
Wird ausgelöst, wenn eine ungültige HTTP-Version übergeben wurde.

◆ start_request()

def hsl20_4_http_client.hsl20_4_http_client.Client.start_request (   self)

Startet den HTTP-Abruf.

Löst eine Exception aus, wenn nicht alle für den Abruf benötigten Attribute gesetzt wurden.

Ausnahmebehandlung
AttributeError
Löst eine Exception aus, wenn nicht alle für den Abruf benötigten Attribute gesetzt wurden.
RuntimeError
Löst eine Exception aus, wenn der Hostname nicht aufgelöst werden konnte.
RuntimeError
Löst eine Exception aus, wenn die Methode bereits aufgerufen wurde.

Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei: