Написала рабочий скрипт с использованием file_get_contents
, где пользователь аутентифицируется и выводятся фото из его альбомов. Но потом мне сказали, что вместо file_get_contents
лучше использовать cURL. И я пыталась, в результате получая ошибку:
{"error":"invalid_grant","error_description":"Code is invalid or expired."}
Например, пыталась получить access_token
:
$data = array(
'client_id' => $app_id,
'client_secret' => $app_key,
'redirect_uri' => $redirect_uri,
'code' => $_GET["code"]
);
$string = http_build_query($data);
$ch = curl_init(); // открывает сессию
curl_setopt($ch, CURLOPT_URL, "https://oauth.vk.com/access_token"); // задает настройки
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $string);
$output = curl_exec($ch); // отправляет запрос
curl_close($ch); // закрывает сессию
print_r($output);
Пожалуйста, объясните как правильно это сделать. Что-то я совсем не понимаю как им пользоваться. Возможно, проблема в названии метода в конце url?
Получение access_token
Ваша ошибка в том, что Вы отправляете параметры в $_POST
, а нужно в $_GET
, т.е.:
$data = array(
'client_id' => $app_id,
'client_secret' => $app_key,
'redirect_uri' => $redirect_uri,
'code' => $_GET["code"]
);
$string = http_build_query($data);
$ch = curl_init(); // открывает сессию
curl_setopt($ch, CURLOPT_URL, "https://oauth.vk.com/access_token?".urldecode($string)); // задает настройки
$output = curl_exec($ch); // отправляет запрос
curl_close($ch); // закрывает сессию
print_r($output); //ответ в json
$token = json_decode($output, true);
var_dump($token);
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
после получения данных делаем запрос
Доброго времени сутокПодскажите как создается отложенный постинг на примере того же сайта Вконтакте
Доброго времени! Есть две одинаковые таблицы mesages и achuvedoms с полями: