imgur с Как загрузить изображение в мой альбом (ошибка 401 & quot; Требуется аутентификация & quot;)?

Для загрузки изображения в альбомах на imgur.com это код:

if(isset($_FILES['upload']['tmp_name'])) {
$imgbinary = fread(fopen($_FILES['upload']['tmp_name'], "r"), filesize($_FILES['upload']['tmp_name']));
$image = 'data:image/png;base64,' . base64_encode($imgbinary);
}

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://imgur-apiv3.p.mashape.com/3/image');
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Authorization: Client-ID ' . $client_id ));
curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'X-Mashape-Key: '. $xmash)); //. $xmash
curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type:  application/x-www-form-urlencoded' ));
curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'image' => $image ));
curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'album' => $album_id ));
curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'type' => 'base64' ));
curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'name' => 'test_name' ));
curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'title' => 'test title' ));
curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'description' => 'blablabla' ));

$reply = curl_exec($ch);
var_dump($reply);
curl_close($ch);

Но теперь мы получаем ошибку в ответе:

string (112) «{» data «: {» error «:» Аутентификация
требуется » «запрос»: «/ 3 / изображение», «метод»: «ПОСТ»}, «успех» ложь, «статус»: 401}»

В результате у нас есть несколько вопросов:

  1. Как я могу авторизоваться (на php)?
  2. в документах https://market.mashape.com/imgur/imgur-9 нужна паста Authorization HEADER AUTH, Как получить его?

0

Решение

нужно объединить их в один массив и, таким образом, один вызов set:

$headers = array('Authorization: Client-ID ' . $client_id, 'X-Mashape-Key: ' . $Mashape_Key)
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]