PHP CURL: die manuelle Einstellung der content-length-header

Sagen, dass ich eine Datei hochladen mit PHP, CURL:

$postData = array();

$postData['file_name'] = "test.txt";
$postData['submit'] = "UPLOAD";

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url );
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POST, 1 );
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData );

Nun davon ausgehen, ich habe manuell die content-length-header.

$headers=array(
     "POST /rest/objects HTTP/1.1",
     'accept: */*',
     "content-length: 0" //instead of 0, how could I get the length of the body from curl?
    )
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); //set headers
$response = curl_exec($ch);

Wie würde ich das Messen Sie die Größe des Körpers? (nur Angabe der Dateigröße als die Länge des Inhalts nicht zu funktionieren scheint)

In einem anderen Beispiel, was passiert, wenn der Körper enthält die Daten, die nicht auf eine tatsächliche Datei. (manuelle Einstellung durch postfields) In dieser situation, wie würde ich die content-length der Körper?

Vielen Dank für jede Licht auf diese, scheint es, ein hartes Problem.

InformationsquelleAutor stormist | 2009-12-16
Schreibe einen Kommentar