Краткое руководство по PHP

В этом руководстве рассказывается, как настроить простое приложение командной строки на PHP, которое отправляет запросы к YouTube Data API. В этом кратком руководстве объясняется, как выполнить два запроса к API:

  1. Вы будете использовать ключ API, который идентифицирует ваше приложение, чтобы получить информацию о канале GoogleDevelopers на YouTube.
  2. Вы будете использовать идентификатор клиента OAuth 2.0, чтобы отправлять авторизованные запросы на получение информации о вашем канале YouTube.

Требования

Чтобы выполнить инструкции из этого руководства, вам потребуется:

  • PHP 5.4 или более поздней версии с установленным интерфейсом командной строки (CLI) и расширением JSON.
  • Инструмент управления зависимостями Composer, установленный глобально.
  • Клиентская библиотека API Google для PHP:
    • Если вы ещё не установили клиентскую библиотеку:
      composer require google/apiclient:^2.0
    • Если вы уже установили клиентскую библиотеку, рекомендуем обновить ее, чтобы использовать самые актуальные классы для тестируемой библиотеки:
      composer update google/apiclient --with-dependencies

Шаг 1. Настройте проект и учетные данные

Создайте или выберите проект в Cloud Console. Выполните следующие задачи в консоли Cloud для своего проекта:

  1. На панели библиотеки найдите YouTube Data API v3. Нажмите на API и убедитесь, что он включен для вашего проекта.

  2. На панели учетных данных создайте две учетные записи:

    1. Создайте ключ API, который будет использоваться для отправки запросов к API, не требующих авторизации пользователя. Например, для получения информации об общедоступном канале YouTube не требуется авторизация пользователя.

    2. Создайте идентификатор клиента OAuth 2.0. В качестве типа приложения выберите Компьютерное приложение. Учетные данные OAuth 2.0 необходимы для запросов, требующих авторизации пользователя. Например, чтобы получить информацию о канале YouTube, принадлежащем пользователю, который прошел аутентификацию, необходимо разрешение этого пользователя.

      Скачайте JSON-файл с учетными данными OAuth 2.0. Файл имеет название, похожее на client_secret_CLIENTID.json, где CLIENTID – идентификатор клиента для вашего проекта.

Шаг 2. Настройте и запустите пример

Используйте виджет API Explorer на боковой панели, чтобы получить образец кода для извлечения информации о канале GoogleDevelopers на YouTube. В этом запросе для идентификации приложения используется ключ API, и он не требует авторизации пользователя или каких-либо специальных разрешений от пользователя, запускающего пример.

  1. Откройте документацию по методу channels.list.
  2. На этой странице в разделе "Примеры использования" приведена таблица с описанием нескольких распространенных способов применения этого метода. Первый список в таблице предназначен для вывода результатов по идентификатору канала.

    Нажмите на значок кода для первого адреса, чтобы открыть и заполнить полноэкранный API Explorer.

    Изображение, которое указывает на местоположение ссылки на символ кода в таблице, где перечислены варианты использования для документации по методу channels.list. Альтернативный текст для этого изображения идентифицирует изображение как символ кода и указывает вариант использования, связанный с этой ссылкой.

  3. В левой части полноэкранного режима API Explorer показано следующее:

    1. Под заголовком Request parameters (Параметры запроса) перечислены параметры, которые поддерживает метод. Значения параметров part и id должны быть заданы. Значение параметра id – UC_x5XG1OV2P6uZZ5FSM9Ttw – это идентификатор канала GoogleDevelopers на YouTube.

    2. Под параметрами находится раздел Учетные данные. В раскрывающемся меню в этом разделе должно быть выбрано значение Ключ API. По умолчанию в API Explorer используются демонстрационные учетные данные. Однако для локального запуска примера вам понадобится собственный ключ API.

      Изображение, на котором показаны учетные данные в полноэкранном режиме API Explorer и раскрывающееся меню с выбранным вариантом "Ключ API".

  4. В правой части окна API Explorer в полноэкранном режиме показаны вкладки с примерами кода на разных языках. Выберите вкладку PHP.

  5. Скопируйте пример кода и сохраните его в файле с названием example.php.

  6. В скачанном примере найдите строку YOUR_API_KEY и замените ее ключом API, созданным на шаге 1 этого руководства.

  7. Запустите пример из командной строки. В рабочем каталоге выполните следующую команду:

    php example.php

  8. Пример должен выполнить запрос и вывести ответ в STDOUT.

Шаг 3. Выполните авторизованный запрос

На этом шаге вы измените пример кода, чтобы он получал информацию не о канале GoogleDevelopers, а о вашем канале YouTube. Для этого запроса требуется авторизация пользователя.

  1. Вернитесь к документации по методу channels.list API.

  2. В разделе "Распространенные варианты использования" нажмите на значок кода для третьего элемента в таблице. В этом случае нужно вызвать метод list для канала "mychannel".

  3. В левой части полноэкранного API Explorer вы увидите список параметров, за которым следует раздел Credentials (Учетные данные). Однако в этом случае есть два отличия от примера, в котором вы получали информацию о канале GoogleDevelopers:

    1. В разделе параметров вместо значения параметра id должно быть задано значение параметра mine – true. Это указывает серверу API на то, что нужно получить информацию о канале текущего авторизованного пользователя.

    2. В разделе Учетные данные в раскрывающемся меню должен быть выбран вариант Google OAuth 2.0.

      Кроме того, если вы нажмете на ссылку Показать области действия, должна быть выбрана область действия https://www.googleapis.com/auth/youtube.readonly.

      Изображение, на котором показаны области действия в полноэкранном режиме API Explorer и выбранный вариант использования учетных данных Google OAuth 2.0.

  4. Как и в предыдущем примере, выберите вкладку PHP, скопируйте пример кода и сохраните его в файле example.php.

    Найдите в коде строку YOUR_CLIENT_SECRET_FILE.json и замените ее на путь к файлу с секретным кодом клиента, который вы скачали на шаге 1 этого руководства.

  5. Запустите пример из командной строки. В рабочем каталоге выполните следующую команду:

    php example.php

  6. Скопируйте URL из консоли и откройте его в браузере.

    Если вы ещё не вошли в аккаунт Google, вам будет предложено это сделать. Если вы вошли в несколько аккаунтов Google, вам будет предложено выбрать один из них для авторизации.

  7. Нажмите кнопку, чтобы предоставить приложению доступ к областям действия, указанным в примере кода.

  8. Скопируйте код авторизации из браузера и вставьте его в терминал. После этого можно закрыть вкладку браузера, использованную для авторизации.

    Ответ API снова должен быть выведен в STDOUT.

Дополнительные сведения