Ошибка cURL PHP: Failed to connect to api-metrika.yandex.ru port 443: Socket is not connected

146
23 марта 2018, 13:38

Для работы с 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

Кто может подсказать, что не так делаю?

READ ALSO
Как исправить скрипт регистрации на PHP (PDO)?

Как исправить скрипт регистрации на PHP (PDO)?

Скрипт работает некорректно, пропускает всех желающихКто знает, в чем проблема и как ее исправить?

134
Php, GD, узнать длину текста в px

Php, GD, узнать длину текста в px

Я видела, что в этом случае рекомендуют использовать imagettfbbox, но я никак не пойму какВозможно, вы подскажете другой способ?

130
PHP скрипт для сборса кеша Cloudflare

PHP скрипт для сборса кеша Cloudflare

Задача: PHP скриптом (php 56) отправлять запросы на API CloudFlare на сброс конкретного файла (картинки) из его кеша

156
Не приходят сообщения на почту?

Не приходят сообщения на почту?

Есть скрипт, кто заполнил заявку, тому отправляется, а копия Ректору не отправляется Вот ссылка на скрипт https://gistgithub

123