Добрый день. Помогите сделать правильный запрос к вб.
Условия (
https://openapi.wb.ru/content/api/ru/#tag/Mediafaj...) :
Authorizations:HeaderApiKey
header Parameters
X-Vendor-Code
required
string
Example: 6000000001
Артикул продавца
X-Photo-Number
required
integer
Example: 2
Номер медиафайла на загрузку. Начинать с 1.
При загрузке видео всегда указывать значение 1.
Чтобы добавить фото к уже загруженным в НМ, номер медиафайла должен быть больше кол-ва загруженных в НМ медиафайлов.
Request Body schema: multipart/form-data
uploadfile
string
Мой код
if($result !=''){
$character_object = photos($_POST['ARTICLE'], 1, $post_data, $boundary);
echo "<pre>";
print_r($character_object) ;
echo "</pre>";
}
function build_data_files($boundary, $fields, $files){
$data = '';
$eol = "\r\n";
$delimiter = '-------------' . $boundary;
foreach ($fields as $name => $content) {
$data .= "--" . $delimiter . $eol
. 'Content-Disposition: form-data; name="' . $name . "\"".$eol.$eol
. $content . $eol;
}
foreach ($files as $name => $content) {
$data .= "--" . $delimiter . $eol
. 'Content-Disposition: form-data; name="' . $name . '"; filename="' . $name . '"' . $eol
. 'Content-Type: image/webp'.$eol
. 'Content-Transfer-Encoding: binary'.$eol;
$data .= $eol;
$data .= $content . $eol;
}
$data .= "--" . $delimiter . "--".$eol;
return $data;
}
$delimiter = '-------------' . $boundary;
$headers = [
"Authorization: api key",
"Content-Type: multipart/form-data; boundary=" . $delimiter ,
"X-Vendor-Code:".(string)$article,
"X-Photo-Number:".(int)$photo_number,
];
$url = 'https://suppliers-api.wildberries.ru/content/v1/media/file';
$options = [
CURLOPT_URL => $url,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => $post_data,
CURLOPT_HTTPHEADER => $headers,
];
$ch = curl_init();
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
curl_close($ch);
return ['res' => $result, 'option' => $options];
}
Ответ приходит с ошибкой :
{"additionalErrors":null,"data":null,"error":true,"errorText":"Невозможно определить mime-тип файла; поддерживаемые форматы: изображения (\"image/bmp\", \"image/gif\", \"image/jpeg\", \"image/png\", \"image/webp\"), видео (\"video/mp4\", \"video/quicktime\")"}
post data :
[10002] =>
https://suppliers-api.wildberries.ru/content/v1/me...
[10036] => POST
[19913] => 1
[10015] => ---------------65735da51ff36
Content-Disposition: form-data; name="uploadfile"
https://www.сайт.ru/upload/resize_cache/webp/ibloc...
---------------65735da51ff36--
header :
[1] => Content-Type: multipart/form-data; boundary=-------------65735da51ff36
[2] => X-Vendor-Code:11129
[3] => X-Photo-Number:1