PHP | CURL und Bild im Body schicken
Garfield
- https
- php
Hallo,
ich habe ein Problem. Denn ich möchte ein Bild via CURL übergeben/hochladen. Die Gegenseite schreibt mir [...]image style transfer expect JPEG image raw bytes in body of HTTP request without any kind of form encodings[...].
Nun habe ich mich durchversucht. Und angefangen das Bild mit dem PHP Script via file_get_contens ein zu lesen. Dann starte ich CURL und setze im httpheader die Information für ein Bild. Nur wie packe ich das Bild in den Body?
$img_url = "beispiel.jpg";
$img_data = file_get_contents($img_url);
$sURL = "https://test.beispiel.com";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $sURL);
curl_setopt($ch, CURLOPT_TIMEOUT, '10');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: image/jpeg'
));
$content = curl_exec($ch);
Nächster Versuch. Ich glaube sehe den Wald wohl vor lauter Bäumen nicht mehr...
$img_url = "beispiel.jpg";
$img_data = file_get_contents($img_url);
$sURL = "https://api.beispiel.com/";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $sURL);
//image(start)
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $img_data);
//image(end)
curl_setopt($ch, CURLOPT_TIMEOUT, '10');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: image/jpeg'
));
$content = curl_exec($ch);
Hi,
Sieht mir nach einem Fall für curl_file_create aus.
cu,
Andreas a/k/a MudGuard
Hi,
es lag daran, das die Gegenseite noch eine zusätzliche Headerinformation bräuchte um das Bild auch an zu nehmen.
Vielen Dank die Lösung war noch einfacher hier: https://forum.selfhtml.org/self/2018/feb/16/php-curl-und-bild-im-body-schicken/1713955#m1713955
Hi,
... Nur wie packe ich das Bild in den Body?
Ganz einfach: Die Binary mit Request-Method PUT. MfG
Vielen Dank die Lösung war noch einfacher hier: https://forum.selfhtml.org/self/2018/feb/16/php-curl-und-bild-im-body-schicken/1713955#m1713955