Guía de inicio rápido de Java

En esta guía de inicio rápido, se explica cómo configurar una aplicación de línea de comandos simple en Java que realiza solicitudes a la API de YouTube Data. En realidad, en este inicio rápido, se explica cómo realizar dos solicitudes a la API:

  1. Usarás una clave de API, que identifica tu aplicación, para recuperar información sobre el canal de YouTube de GoogleDevelopers.
  2. Usarás un ID de cliente de OAuth 2.0 para enviar una solicitud autorizada que recupere información sobre tu propio canal de YouTube.

Requisitos previos

Para ejecutar esta guía de inicio rápido, necesitarás lo siguiente:

Paso 1: Configura tu proyecto y tus credenciales

Crea o selecciona un proyecto en la Consola de APIs. Completa las siguientes tareas en la Consola de APIs de tu proyecto:

  1. En el panel de la biblioteca, busca la versión 3 de la API de YouTube Data. Haz clic en la ficha de esa API y asegúrate de que esté habilitada para tu proyecto.

  2. En el panel de credenciales, crea dos credenciales:

    1. Crea una clave de API. Usarás la clave de API para realizar solicitudes a la API que no requieran autorización del usuario. Por ejemplo, no necesitas la autorización del usuario para recuperar información sobre un canal público de YouTube.

    2. Crea un ID de cliente de OAuth 2.0. Establece el tipo de aplicación como Otro. Debes usar credenciales de OAuth 2.0 para las solicitudes que requieren autorización del usuario. Por ejemplo, necesitas la autorización del usuario para recuperar información sobre el canal de YouTube del usuario autenticado actualmente.

      Descarga el archivo JSON que contiene tus credenciales de OAuth 2.0. El archivo tiene un nombre como client_secret_CLIENTID.json, donde CLIENTID es el ID de cliente de tu proyecto.

Paso 2: Prepara el proyecto

Completa los siguientes pasos para preparar tu proyecto de Gradle:

  1. En tu directorio de trabajo, ejecuta los siguientes comandos para crear una nueva estructura de proyecto:

    $ gradle init --type basic
    $ mkdir -p src/main/java src/main/resources
    
  2. Mueve el archivo JSON que descargaste después de crear tu ID de cliente OAuth 2.0 al directorio src/main/resources que se encuentra debajo de tu directorio de trabajo y cambia el nombre del archivo a client_secret.json.

  3. Abre el archivo build.gradle en tu directorio de trabajo y reemplaza su contenido por lo siguiente:

    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'
    }
  4. En el archivo build.gradle, debes reemplazar las variables REVISION y CL_VERSION por dos valores de la documentación de la biblioteca cliente de la API de YouTube Data. En la siguiente captura de pantalla, que muestra la documentación de la API de YouTube Analytics, se indica dónde aparecen las dos variables en la página.

    Captura de pantalla de la referencia de JavaDoc que muestra cómo encontrar los valores de las variables "REVISION" y "CL_VERSION"

Paso 3: Configura y ejecuta la muestra

Usa el widget del Explorador de APIs en el panel lateral para obtener código de muestra para recuperar información sobre el canal de YouTube de GoogleDevelopers. Esta solicitud usa una clave de API para identificar tu aplicación y no requiere autorización del usuario ni permisos especiales del usuario que ejecuta la muestra.

  1. Abre la documentación del método channels.list de la API.
  2. En esa página, la sección "Casos de uso comunes" contiene una tabla que explica varias formas comunes en las que se usa el método. El primer elemento de la tabla es para los resultados de la lista por ID de canal.

    Haz clic en el símbolo de código de la primera lista para abrir y completar el Explorador de APIs en pantalla completa.

    Imagen que identifica la ubicación del vínculo del símbolo de código en la tabla que enumera los casos de uso de la documentación de channels.list. El texto alternativo de esa imagen la identifica como un símbolo de código y especifica el caso de uso asociado con ese vínculo.

  3. En el lado izquierdo del Explorador de APIs en pantalla completa, se muestra lo siguiente:

    1. Debajo del encabezado Request parameters, hay una lista de parámetros que admite el método. Se deben establecer los valores de los parámetros part y id. El valor del parámetro id, UC_x5XG1OV2P6uZZ5FSM9Ttw, es el ID del canal de YouTube de GoogleDevelopers.

    2. Debajo de los parámetros, hay una sección llamada Credenciales. El menú desplegable de esa sección debería mostrar el valor Clave de API. De forma predeterminada, el Explorador de APIs usa credenciales de demostración para facilitar el inicio. Sin embargo, usarás tu propia clave de API para ejecutar la muestra de forma local.

      Imagen que muestra las "Credenciales" en el Explorador de APIs en pantalla completa y el menú desplegable con la opción "Clave de API" seleccionada.

  4. En el lado derecho del Explorador de APIs en pantalla completa, se muestran pestañas con muestras de código en diferentes lenguajes. Selecciona la pestaña Java.

  5. Copia el código de muestra y guárdalo en un archivo llamado src/main/java/ApiExample.java. Cada muestra usa el mismo nombre de clase (ApiExample) para que no necesites modificar el archivo build.gradle para ejecutar diferentes muestras.

  6. En el ejemplo que descargaste, busca la cadena YOUR_API_KEY y reemplázala por la clave de API que creaste en el paso 1 de esta guía de inicio rápido.

  7. Ejecuta la muestra desde la línea de comandos. En tu directorio de trabajo, ejecuta lo siguiente:

    gradle -q run

  8. La muestra debe ejecutar la solicitud y mostrar la respuesta en STDOUT.

Paso 4: Ejecuta una solicitud autorizada

En este paso, modificarás tu muestra de código para que, en lugar de recuperar información sobre el canal de YouTube de GoogleDevelopers, recupere información sobre tu canal de YouTube. Esta solicitud requiere autorización del usuario.

  1. Vuelve a la documentación del método channels.list de la API.

  2. En la sección "Casos de uso comunes", haz clic en el símbolo de código del tercer elemento de la tabla. El caso de uso es llamar al método list para "mi canal".

  3. Nuevamente, en el lado izquierdo del Explorador de APIs en pantalla completa, verás una lista de parámetros seguida de la sección Credenciales. Sin embargo, hay dos cambios con respecto al ejemplo en el que recuperaste información sobre el canal de GoogleDevelopers:

    1. En la sección de parámetros, en lugar de establecer el valor del parámetro id, se debe establecer el valor del parámetro mine en true. Esto indica al servidor de la API que recupere información sobre el canal del usuario autenticado actualmente.

    2. En la sección Credenciales, el menú desplegable debe seleccionar la opción de Google OAuth 2.0.

      Además, si haces clic en el vínculo Mostrar permisos, el permiso https://www.googleapis.com/auth/youtube.readonly debería estar marcado.

      Imagen que muestra los permisos en el Explorador de APIs en pantalla completa y la opción para usar las credenciales de "Google OAuth 2.0" seleccionada.

  4. Al igual que en el ejemplo anterior, selecciona la pestaña Java, copia la muestra de código y guárdala en src/main/java/ApiExample.java.

  5. Ejecuta la muestra desde la línea de comandos. En tu directorio de trabajo, ejecuta lo siguiente:

    gradle -q run

  6. La muestra debería intentar abrir una nueva ventana o pestaña en tu navegador predeterminado. Si esto falla, copia la URL de la terminal y ábrela manualmente en tu navegador.

    Si aún no accediste a tu Cuenta de Google, se te solicitará que lo hagas. Si accediste a varias Cuentas de Google, se te pedirá que selecciones una para la autorización.

  7. Haz clic en el botón para otorgar a tu aplicación acceso a los permisos especificados en tu muestra de código.

  8. La muestra continuará automáticamente, y puedes cerrar la pestaña del navegador que se usó para el flujo de autorización.

    La respuesta de la API se debería volver a imprimir en STDOUT.

Lecturas adicionales