form:AddContent(name, content[, type, headers])
form:AddContent()
wird zum Anhängen einer Sektion beim Erstellen
eines HTTP-POST mit mehreren Multipart/Formdata (Teilen/Formulardaten) (manchmal als RFC 2388-Posts
bezeichnet) verwendet. Übergeben Sie den Form-Handle als Parameter an
#CURLOPT_HTTPPOST
, nachdem Sie alle Sektionen hinzugefügt haben, die Sie
einschließen möchten. Siehe easy:SetOpt_HTTPPost für Details.
Sie müssen form:Free() aufrufen, nachdem der Form-Post ausgeführt wurde, um die Ressourcen freizugeben.
Die Verwendung von POST mit HTTP 1.1 impliziert die Verwendung eines Headers
"Expect: 100-continue". Sie können diesen Header wie gewohnt mit
#CURLOPT_HTTPHEADER
deaktivieren.
Erstens gibt es einige Grundlagen, die Sie über Posts mit mehreren
Multipart/Formdata verstehen müssen. Jeder Teil besteht aus mindestens
einem NAME-
und einem CONTENTS
-Teil. Wenn der Teil zum Hochladen von
Dateien erstellt wurde, gibt es auch einen gespeicherten CONTENT-TYPE
und einen FILENAME
(Dateiname). Im Folgenden werden die Optionen erläutert, mit denen Sie
diese Eigenschaften in den Teilen festlegen, die Sie zu Ihrem Post
hinzufügen möchten.
Das Argument name
muss eine Zeichenkette sein, die den Namen von diesem Teil
angibt. Der Name darf keine nullwertigen Bytes enthalten. Das Argument content
muss die tatsächlich zu sendenden Daten enthalten. Das optionale Argument
type
kann verwendet werden, um den Content-Typ für den Teil festzulegen und
das optionale Argument headers
kann verwendet werden, um zusätzliche
Header für die POST-Sektion des Formulars anzugeben. Dies erfordert eine
Tabelle mit einer Liste und hängt die Liste der Header an die von libcurl
automatisch erzeugten an.