Для работы с API Яндекс.Метрика есть php библиотека, но мне не очень-то хочется подключать целую библиотеку, чтобы просто получить данные по одному единственному запросу к метрике.
Вводя в ручную в строке браузера запрос вида:
https://api-metrika.yandex.ru/analytics/v3/data/ga?end-date=today&ids=ga:ID_СЧЁТЧИКА&metrics=ga:users&start-date=29daysAgo&oauth_token=ТОКЕН_ДОСТУПА
Я получаю нужный мне JSON.
Если же пытаюсь сделать это через:
file_get_contents("ТОТ_ЖЕ_URL");
- выдаёт:
failed to open stream: ������ �� �������� ��� �������� ���� (when sending on a datagram socket using a sendto call) no address was supplied.
То есть "не удалось открыть поток.."
Пытаюсь через cUrl:
// Инициализируем сессию cUrl
$ch = curl_init();
// Устанавливаем настройки:
curl_setopt($ch, CURLOPT_URL, "https://api-metrika.yandex.ru/analytics/v3/data/ga?end-date=today&ids=ga:ID_СЧЁТЧИКА&metrics=ga:users&start-date=29daysAgo&oauth_token=ТОКЕН_ДОСТУПА");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["Content-Type: application/x-www-form-urlencoded;charset=utf-8"]); // Заголовки и кодировка
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0'); // Прикидываемся браузером
curl_setopt($ch, CURLOPT_TIMEOUT, 30); // Максимальное время выполнения запроса на передачу данных, в секундах
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // Возвращать ответ в окно браузера - ненужно
// Выполняем
$metrika_res = curl_exec($ch);
// Проверяем выполнился ли cUrl
if($metrika_res === false) {
die('Ошибка cURL PHP: ' . curl_error($ch));
} else {
debug($metrika_res);
}
// Закрываем сессию cUrl
curl_close($ch);
Выдаёт:
Ошибка cURL PHP: Failed to connect to api-metrika.yandex.ru port 443: Socket is not connected
Кто может подсказать, что не так делаю?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Скрипт работает некорректно, пропускает всех желающихКто знает, в чем проблема и как ее исправить?
Я видела, что в этом случае рекомендуют использовать imagettfbbox, но я никак не пойму какВозможно, вы подскажете другой способ?
Задача: PHP скриптом (php 56) отправлять запросы на API CloudFlare на сброс конкретного файла (картинки) из его кеша
Есть скрипт, кто заполнил заявку, тому отправляется, а копия Ректору не отправляется Вот ссылка на скрипт https://gistgithub