2013-11-22 2 views
2

Я использую PHP для загрузки изображений в Imgur это код, я использую:Загрузить изображение в Imgur с PHP

$id = 'clientId'; 
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, 'https://api.imgur.com/3/image.json'); 
    curl_setopt($ch, CURLOPT_POST, TRUE); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Client-ID ' . $id)); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, array('image' => base64_encode($image))); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
    $response = curl_exec($ch); 
    $response = json_decode($response); 
    curl_close ($ch); 

код работает, но я хочу изображения для загрузки на мой счет альбома если кто-нибудь знает, как это сделать, Также я пытаюсь понять, почему мне нужно установить curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); для кода для работы, я посетил manual, но если кто-нибудь может дать мне некоторый фон о том, как и почему я буду очень благодарен, Спасибо всем, и у меня хороший день.

+1

Вы просмотрели их [Документацию по API] (http://api.imgur.com/endpoints/album)? Это, как представляется, хорошо документировано. – Latheesan

+0

Я посмотрю, но можете ли вы объяснить, пожалуйста, о CURLOPT_SSL_VERIFYPEER. –

ответ

1

Вы можете отправить эти параметры с запросом:

image required A binary file, base64 data, or a URL for an image 
album optional The id of the album you want to add the image to. For anonymous albums, {album} should be the deletehash that is returned at creation. 
type optional The type of the file that's being sent; file, base64 or URL 
name optional The name of the file, this is automatically detected if uploading a file with a POST and multipart/form-data 
title optional The title of the image. 
description optional The description of the image. 

Итак, как об этом:

curl_setopt($ch, CURLOPT_POSTFIELDS, array('image' => base64_encode($image), 'album' => 1234)); 
+0

Эй, я попробовал «альбом» => код моего альбома, но я получаю сообщение об ошибке: «Я не владелец этого альбома, ты знаешь, почему .... –

+0

Вы вошли в систему, когда публикуете изображений? https://api.imgur.com/oauth2#authorization –

+0

Не я не вошел в систему Я только поставляю идентификатор клиента, Можете ли вы, например, пример ... –

1

, установив CURLOPT_SSL_VERIFYPEER ложь, он не будет проверять домен на сертификат SSL. Обычно сертификат устанавливается в домен xyz.com, а не во всех поддоменах xyz (более дорогостоящий, поскольку эти сертификаты встречаются реже).

Поскольку он работает, когда вы устанавливаете его в false, это означает, что их сертификат ssl не создается для определенного пути домена.

Установив значение true, он попытается проверить сертификат и остановит соединение, если сертификат не существует для этого конкретного пути домена. Надеюсь, это полезно.

+0

Спасибо, что помогли. –

Смежные вопросы