Попытка создать php-инструмент автозагрузки изображений с помощью curl. С другими загрузками, такими как текст, проблем не было. Но когда дело доходит до загрузки изображений - я застрял. Просмотрел другие подобные проблемы здесь, в SO, но не смог найти ничего, что могло бы помочь.
С помощью инструмента разработчика Firefox я обнаружил, что отправленные заголовки:
Host: www.xxxxxx.com
User-Agent: Mozilla/5.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Referer: https://www.xxxxxx.com
Content-Type: multipart/form-data; boundary=---------------------------54682012365
Content-Length: 13645
Origin: https://www.xxxxxx.com
DNT: 1
Connection: keep-alive
Cookie: PHPSESSID=xxxxx;
TE: Trailers
И запрос тела:
-----------------------------54682012365
Content-Disposition: form-data; name="file"; filename="test.jpg"
Content-Type: image/jpeg
--->THERE GOES SOMETHING I BELIEVE TO BE IMAGETOTEXT(random symbols with few readable parts)<---
-----------------------------54682012365
Content-Disposition: form-data; name="ImId"
0
-----------------------------54682012365--
Пытался воспроизвести запрос с помощью CURL
Отправка заголовков, как указано выше. Запрос тела:
$img = file_get_contents('test.jpg');
$body_message =
'---------------------------54682012365
Content-Disposition: form-data; name="file"; filename="test.jpg"
Content-Type: image/jpeg
'.$img.'
---------------------------54682012365
Content-Disposition: form-data; name="ImId"
0
---------------------------54682012365--';
Варианты завитка:
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => 1,
CURLINFO_HEADER_OUT => true,
CURLOPT_POST => 1,
CURLOPT_POSTFIELDS => $body_message
Но всегда получайте пользовательскую ошибку JSON 'No images selected'
;
Пробовал различные модификации с $body_message
, немного пробовал с Curlfile, но все равно безуспешно. Есть предположения?