Я пытаюсь написать класс, который может добавить закладку в мою учетную запись Delicious.
Вот мой метод:Нужна помощь по добавлению закладки в Delicious с помощью cURL
public function addBookmark($url, $description) {
$dusername = 'myUsername';
$dpassword = 'myPassword';
$api = 'api.del.icio.us/v1';
$link = urlencode($url);
$desc = urlencode($description);
$apicall = "https://$dusername:[email protected]$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
, но это тоже не сработало.
Это сводит меня с ума, потому что сначала я закатил свой собственный код, который не работал. Теперь я использую код, который кто-то (предположительно) работал на себя, и все равно не повезло.
Любая помощь с благодарностью, спасибо!
У вас возникло определенное сообщение об ошибке? – inkedmn
К сожалению, нет. Я хотел бы. Я использовал curl_getinfo(), но он не выплевывал никаких сообщений об ошибках. Предполагается, что Delicious API возвращает ответ XML, но я не получал его. –
попробуйте echo curl_error ($ ch); – Greg