Добрый день!
Работаю с API Blockchain. Для корректной работы необходимо отправить с помощь curl несколько параметров, один из которых callback_url, который должен быть закодирован.
$secret = 'testing';
$my_xpub = 'testing';
$my_api_key = 'testing';
$my_callback_url = 'http://lava.ideah.ru/IPN/blockchain='.$secret;
$call_url = urlencode($my_callback_url);
$root_url = 'https://api.blockchain.info/v2/receive';
// ################################### Generate forward adress BTC ######################################## //
$fields['xpub'] = $my_xpub;
$fields['callback'] = $call_url;
$fields['key'] = $my_api_key;
$url = $root_url;
$ch = curl_init();
$url = $url . '?' . http_build_query($fields);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 120);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$response = json_decode($response, true);
if ($httpCode == 200) {
$status_adress = "success";
$forwarding_address = $response['address'];
} else {
$status_adress = "error";
$forwarding_address = "undefined";
$error_message = $response['message'];
}
Проблема в том, что Blockchain возвращает мне ошибку:
Callback parameter is not URL encoded
Я попробовал отправить параметры следующим способом:
$parameters = 'xpub=' .$my_xpub. '&callback=' .urlencode($my_callback_url). '&key=' .$my_api_key;
$response = file_get_contents($root_url . '?' . $parameters);
$object = json_decode($response);
$forwarding_address = $object->address;
В этом случае ошибку не получаю, но итоговые callback ссылки разные:
http%3A%2F%2Flava.ideah.ru%2FIPN%2Fblockchain%3DZzsMLGKe162CfA5EcG6j& - 2 случай
http%3A%2F%2Flava.ideah.ru%2FIPN%2Fblockchain%3DZzsMLGKe162CfA5EcG6j - 1 случай
Почему так происходит и где моя ошибка? Благодарен за любую помощь!
Виртуальный выделенный сервер (VDS) становится отличным выбором
Подскажите, пожалуйста, как можно проверить совпадение чисел:
Здравствуйте! Сайт отказывается принимать любой email, не даёт регистрировать пользователей, как исправить этот момент, с чем может быть связана...
Подскажите пжс как можно заменить кол-во элементов в array_merge на автоматичесую подстановку, тк
Нужно дать право неавторизированным пользователям загружать только картинки на серверИспользую js код