В этом кратком руководстве объясняется, как настроить простое приложение командной строки Java, которое отправляет запросы к API данных YouTube. В этом кратком руководстве объясняется, как выполнить два запроса к API:
- Для получения информации о канале GoogleDevelopers на YouTube вам понадобится API-ключ, который идентифицирует ваше приложение.
- Вам нужно будет использовать идентификатор клиента OAuth 2.0 для отправки авторизованного запроса, который получит информацию о вашем канале YouTube.
Предпосылки
Для запуска этого быстрого старта вам понадобится:
- Java 1.7 или выше.
- Gradle 2.3 или выше .
- Доступ к Интернету и веб-браузеру.
- Аккаунт Google.
Шаг 1: Настройте свой проект и учетные данные
Создайте или выберите проект в API Console . Выполните следующие задачи в API Console для вашего проекта:
На панели библиотеки найдите YouTube Data API v3. Щёлкните по списку этого API и убедитесь, что он включён для вашего проекта.
На панели учетных данных создайте два учетных данных:
Создайте API-ключ. API-ключ будет использоваться для выполнения API-запросов, не требующих авторизации пользователя. Например, для получения информации о публичном канале YouTube авторизация пользователя не требуется.
Создайте идентификатор клиента OAuth 2.0. Установите тип приложения « Другое» . Для запросов, требующих авторизации пользователя, необходимо использовать учётные данные OAuth 2.0. Например, авторизация пользователя необходима для получения информации о канале YouTube текущего аутентифицированного пользователя.
Загрузите JSON-файл с вашими учётными данными OAuth 2.0. Имя файла выглядит так:
client_secret_CLIENTID.json
, гдеCLIENTID
— это идентификатор клиента для вашего проекта.
Шаг 2: Подготовка проекта
Выполните следующие шаги для подготовки вашего проекта Gradle:
В рабочем каталоге выполните следующие команды для создания новой структуры проекта:
$ gradle init --type basic $ mkdir -p src/main/java src/main/resources
Переместите файл JSON, который вы загрузили после создания идентификатора клиента OAuth 2.0, в каталог
src/main/resources
расположенный ниже вашего рабочего каталога, и переименуйте файл вclient_secret.json
.Откройте файл
build.gradle
в вашем рабочем каталоге и замените его содержимое следующим:apply plugin: 'java' apply plugin: 'application' mainClassName = 'ApiExample' sourceCompatibility = 1.7 targetCompatibility = 1.7 version = '1.0' repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.23.0' compile 'com.google.oauth-client:google-oauth-client-jetty:1.23.0' compile 'com.google.apis:google-api-services-youtube:v3-revREVISION-CL_VERSION' }
В файле
build.gradle
необходимо заменить переменные REVISION и CL_VERSION двумя значениями из документации клиентской библиотеки для YouTube Data API. На снимке экрана ниже, где представлена документация по YouTube Analytics API, показано, где на странице появляются эти две переменные.
Шаг 3: Настройка и запуск образца
Используйте виджет API Explorer на боковой панели, чтобы получить пример кода для получения информации о канале GoogleDevelopers на YouTube. Этот запрос использует API-ключ для идентификации вашего приложения и не требует авторизации пользователя или каких-либо специальных разрешений от пользователя, запускающего пример.
- Откройте документацию по методу API channels.list .
На этой странице, в разделе «Распространённые примеры использования», представлена таблица, поясняющая несколько распространённых способов применения этого метода. Первый элемент таблицы предназначен для сортировки результатов по идентификатору канала.
Щелкните символ кода для первого листинга, чтобы открыть и заполнить полноэкранный обозреватель API.
В левой части полноэкранного обозревателя API отображается следующее:
Под заголовком «Параметры запроса» находится список параметров, поддерживаемых методом. Необходимо задать значения параметров
part
иid
. Значение параметраid
,UC_x5XG1OV2P6uZZ5FSM9Ttw
, — это идентификатор канала GoogleDevelopers на YouTube.Под параметрами находится раздел « Учётные данные» . В раскрывающемся меню этого раздела должно отображаться значение «Ключ API» . Обозреватель API по умолчанию использует демонстрационные учётные данные для упрощения начала работы. Но для локального запуска примера вам потребуется собственный ключ API.
В правой части полноэкранного обозревателя API отображаются вкладки с примерами кода на разных языках. Выберите вкладку Java .
Скопируйте пример кода и сохраните его в файле с именем
src/main/java/ApiExample.java
. Каждый пример использует одно и то же имя класса (ApiExample
), поэтому вам не нужно изменять файлbuild.gradle
для запуска разных примеров.В загруженном вами примере найдите строку
YOUR_API_KEY
и замените ее на ключ API, созданный вами на шаге 1 этого краткого руководства.Запустите пример из командной строки. В рабочем каталоге выполните:
gradle -q run
Образец должен выполнить запрос и вывести ответ в
STDOUT
.
Шаг 4: Выполните авторизованный запрос
На этом этапе вы измените пример кода так, чтобы вместо получения информации о канале GoogleDevelopers на YouTube он получал информацию о вашем канале на YouTube. Этот запрос требует авторизации пользователя.
Вернитесь к документации по методу API channels.list .
В разделе «Распространённые варианты использования» нажмите на символ кода для третьего пункта в таблице. Этот вариант использования — вызов метода
list
для «моего канала».Опять же, в левой части полноэкранного обозревателя API вы увидите список параметров, а затем раздел « Учётные данные» . Однако есть два отличия от примера, где вы получали информацию о канале GoogleDevelopers:
В разделе параметров вместо значения параметра
id
следует задать значение параметраmine
равнымtrue
. Это даст API-серверу указание получить информацию о канале текущего аутентифицированного пользователя.В разделе «Учетные данные» в раскрывающемся меню необходимо выбрать опцию Google OAuth 2.0 .
Кроме того, если нажать ссылку «Показать области действия» , должна быть отмечена область действия https://www.googleapis.com/auth/youtube.readonly .
Как и в предыдущем примере, выберите вкладку Java , скопируйте пример кода и сохраните его в
src/main/java/ApiExample.java
.Запустите пример из командной строки. В рабочем каталоге выполните:
gradle -q run
Образец должен попытаться открыть новое окно или вкладку в вашем браузере по умолчанию. Если это не удастся, скопируйте URL из терминала и вручную откройте его в браузере.
Если вы еще не вошли в свою учетную запись Google, вам будет предложено сделать это. Если вы вошли в несколько учетных записей Google, вам будет предложено выбрать одну учетную запись для авторизации.
Нажмите кнопку, чтобы предоставить вашему приложению доступ к областям, указанным в вашем примере кода.
Пример будет выполнен автоматически, и вы можете закрыть вкладку браузера, используемую для процесса аутентификации.
Ответ API снова должен быть выведен на
STDOUT
.