Bezeichnung
easy:SetOpt_PostFields -- setzt die Daten, welche an den Server gesendet werden
Übersicht
easy:SetOpt_PostFields(postdata)
Beschreibung
Übergeben Sie eine Zeichenkette als Parameter, die auf die vollständigen Daten zeigt, um eine HTTP-POST-Operation zu senden. Sie müssen sicherstellen, dass die Daten so formatiert sind, wie Sie sie vom Server erhalten möchten. libcurl wird sie in keiner Weise für Sie konvertieren oder kodieren. So kann beispielsweise der Webserver davon ausgehen, dass diese Daten url-codiert sind.

Dieser POST ist eine normale application/x-www-form-url-encodierte Art (und libcurl setzt diesen Content-Typ standardmäßig, wenn diese Option verwendet wird), die häufig von HTML-Formularen verwendet wird. Ändern Sie den Content-Typ mit #CURLOPT_HTTPHEADER.

Sie können easy:Escape() verwenden, um Ihre Daten bei Bedarf in die URL-Kodierung zu konvertieren. Es wird eine kodierte Zeichenkette zurückgegeben, die in postdata übergeben werden kann.

Die Verwendung von #CURLOPT_POSTFIELDS impliziert die Einstellung von #CURLOPT_POST auf 1.

Wenn #CURLOPT_POSTFIELDS explizit auf Nil gesetzt ist, dann holt libcurl die POST-Daten aus dem Lese-Callback. Wenn Sie einen Nullbyte-POST senden möchten, setzen Sie #CURLOPT_POSTFIELDS auf "" (eine leere Zeichenkette) oder setzen Sie #CURLOPT_POST auf 1 und #CURLOPT_POSTFIELDSIZE auf 0.

Die Verwendung von POST mit HTTP 1.1 impliziert die Verwendung eines "Expect: 100-continue" Headers und libcurl fügt diesen Header automatisch hinzu, wenn bekannt ist, dass der POST entweder größer als 1024 Byte oder wenn die erwartete Größe unbekannt ist. Sie können diesen Header mit #CURLOPT_HTTPHEADER wie gewohnt deaktivieren.

Um Multipart/Formdata POST (auch bekannt als RFC2388-Posts) zu erstellen, überprüfen Sie die Option #CURLOPT_HTTPPOST in Kombination mit form:AddContent().

Eingaben
postdata
Eingabewert

Navigation zeigen