Gambas: Netzwerkprogrammierung
Erscheinungsbild
Zurück zum Gambas-Inhaltsverzeichnis.
Eine Datei herunterladen
[Bearbeiten]Um eine Datei herunterzuladen verwendet man Http, für Gambas gibt es dementsprechend die Klasse HttpClient. Diese ermöglicht einem mit den beiden typischen Methoden Post und Get Websites anzufordern. Hier ein Beispiel welches eine Website herunterlädt und den Quellcode der Seite ausgibt (erfordert das Einbinden der Komponenten gb.net und gb.net.curl):
PUBLIC SUB Main()
DIM contents AS String
contents = getFile("http://gambas.sourceforge.net/")
IF contents = NULL THEN
PRINT "Fehler beim herunterladen!"
ELSE
PRINT contents
END IF
END
' Lädt eine Seite runter und gibt diese als String zurück
PUBLIC FUNCTION getFile(url AS String) AS String
DIM h AS HttpClient
DIM buffer AS String
buffer = NULL
h = NEW HttpClient AS "h"
h.URL = url
h.Get() ' Mit der Get-Methode die Website anfordern
DO WHILE h.Status <> 0
WAIT 0.01
LOOP
' Wenn die Antwort OK ist gehts weiter
IF h.Status >= 0 THEN
' Wenn die Datei was beinhaltet...
IF Lof(h) THEN
' lade sie runter -> in den string buffer
READ #h, buffer, Lof(h)
END IF
END IF
RETURN buffer
END