Нужна помощь в добавлении закладки в Delicious с помощью cURL

StackOverflow https://stackoverflow.com/questions/1456707

  •  12-09-2019
  •  | 
  •  

Вопрос

Я пытаюсь написать класс, который может добавлять закладки в мой аккаунт Delicious.
Вот мой метод:

public function addBookmark($url, $description) {   
    $dusername = 'myUsername';  
    $dpassword = 'myPassword';  
    $api = 'api.del.icio.us/v1';  
    $link = urlencode($url);  
    $desc = urlencode($description);  
    $apicall = "https://$dusername:$dpassword@$api/posts/add?&url=$link&description=$desc";  
    $ch = curl_init($apicall);  
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);  
    curl_setopt($ch, CURLOPT_USERAGENT, 'php - curl');  
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  
    $xml = curl_exec($ch);   
} 

В реальном коде $dusername и $dpassword являются моими фактическими учетными данными.

При вызове из PHP ему не удается добавить закладку.Однако, если я повторю $ apicall и перейду к нему напрямую с помощью FireFox, закладка будет добавлена.Итак, это заставляет меня предположить, что в моей реализации cURL есть ошибка.Я попытался закомментировать строки, в которых он устанавливается CURLOPT_SSL_VERIFYHOST и CURLOPT_USERAGENT, но это тоже не сработало.

Это сводит меня с ума, потому что сначала я внедрил свой собственный код, который не сработал.Теперь я использую код, который кто-то (предположительно) заставил работать на себя, и по-прежнему безуспешно.

Любая помощь очень ценится, спасибо!

Это было полезно?

Решение

Похоже, у вас возникла проблема с проверкой сертификата Центра сертификации.Не уверен, как вы это исправите, но, возможно, вы сможете обойти это следующим образом:

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top