curl_easy_setopt

curl_easy_setopt setzt eine oder mehrere Optionen für einen curl-Pointer.

error = curl_easy_setopt(curl, oOptions)
error = curl_easy_setopt(curl, optionID, option)

Returnwert

errCode ist 0, wenn die Dateiübertragung erfolgreich war oder ein Fehlercode. Die Fehlerbeschreibung kann mit der Funktion curl_easy_strerror erfragt werden.

Parameter

curl

Ist der mit curl_easy_init erzeugte curl-Pointer.

optionID

optionID ist die ID der Option, z. B. CURLOPT_URL (10023).

option

option ist der Wert der Option, eine Zeichenkette, eine Zahl oder ein Objekt, je nach optionID.

oOptions

oOptions ist ein Objekt mit Optionen.

Option Datentyp Beschreibung
CURLOPT_HTTPHEADER String-Vektor Zusätzliche Header-Daten.
CURLOPT_HTTPPOST String-Vektor

smFormData ist eine zweispaltige String-Matrix oder ein leerer String "".

Die linke Spalte enthält name-Elemente und die rechte Spalte die dazugehörigen value-Elemente.

Beipiel: Enthält eine HTML-Seite die folgende Form:

<form method="POST" action="download.cgi">
   <input type="text" name="email"/>
   <input type="text" name="password"/>
   <input type="submit" name="download" value="Download"/>
</form>

kann smFormData folgendermaßen definiert werden:

smFormData = ["email", "info@uniplot.de";
              "password", "xxxx";
              "download", "Download"];
CURLOPT_URL String Die URL, z. B. "http://www.uniplot.de".
CURLOPT_WRITEFUNCTION String

Name einer UniScript-Callback-Funktion:

my_write_callback(data, user_obj)

data: Ein UniScript-String mit den Daten.

user_obj: Ein Objekt (obj_create).

def _curl_write_callback(data, user)
{
    user.cnt = user.cnt + 1;
    user.data[user.cnt] = data;
    return 1;  // return 0 to abort transfer
}
CURLOPT_WRITEDATA Objekt Ein Objekt (obj_create), das an die Callback-Funktion übergeben wird.
CURLOPT_READFUNCTION String Name der UniScript-Read-Funktion.
CURLOPT_READDATA Objekt Ein Objekt (obj_create), das an die Callback-Funktion übergeben

Beispiel:

Bei den Optionsnamen kann die Vorsilbe CURLOPT_ weg gelassen werden und es können Kleinbuchstaben verwendet werden:

oOptions = [. ssl_verifyhost = FALSE,
              timeout = 5 /* sec. */];

Eine vollständige Liste mit Optionen findet sich unter http://curl.haxx.se/libcurl/c/curl_easy_setopt.html. Es können alle Optionen angegeben werden, die einen long-Wert, einen OFF_T-Wert oder einen char*-Wert setzen.

Beispiel

Siehe curl_easy_init.

History

Version Beschreibung
R2015.0 Neu.

id-266065