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 de Java simple que realiza solicitudes a la API de datos de YouTube. En esta guía de 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 obtenga 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 API. Completa las siguientes tareas en la consola de API para tu proyecto:

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

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

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

    2. Crear un ID de cliente de OAuth 2.0 Establece el tipo de aplicación en Otro. Debes usar las credenciales de OAuth 2.0 para las solicitudes que requieren la 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, en el que 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 el directorio de trabajo, ejecuta los siguientes comandos para crear una estructura de proyecto nueva:

    $ 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 de OAuth 2.0 en el directorio src/main/resources 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 con 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 datos de YouTube. La captura de pantalla a continuación, que muestra la documentación para la API de YouTube Analytics, muestra dónde aparecen las dos variables en la página.

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

Paso 3: Configura y ejecuta la muestra

Usa el widget del Explorador de API en el panel lateral a fin de obtener un 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 la autorización del usuario ni ningún permiso especial 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 prácticos comunes" contiene una tabla en la que se explican varias formas comunes en que se usa el método. La primera lista de la tabla es para enumerar los resultados por ID de canal.

    Haz clic en el símbolo de código de la primera ficha para abrir y propagar el Explorador de API de 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 práctico asociado con ese vínculo.

  3. En el lado izquierdo del Explorador de API de 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 para el canal de YouTube de GoogleDevelopers.

    2. Debajo de los parámetros, hay una sección llamada Credenciales. El menú desplegable de esa sección debe mostrar el valor Clave de API. El Explorador de API usa las credenciales de demostración de forma predeterminada para que sea más fácil comenzar. Sin embargo, usarás tu propia clave de API para ejecutar la muestra de manera local.

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

  4. En el lado derecho, el Explorador de API de pantalla completa muestra las pestañas con muestras de código en diferentes idiomas. Selecciona la pestaña Java.

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

  6. En la muestra que descargaste, busca la string 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 debería ejecutar la solicitud y, luego, imprimir la respuesta en STDOUT.

Paso 4: Ejecuta una solicitud autorizada

En este paso, modificarás tu ejemplo 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 la autorización del usuario.

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

  2. En la sección “Casos prácticos comunes”, haz clic en el símbolo de código de la tercera lista de la tabla. Ese caso práctico es llamar al método list para "mi canal".

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

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

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

      Además, si haces clic en el vínculo Mostrar alcances, se debe verificar el alcance https://www.googleapis.com/auth/youtube.readonly.

      Imagen que muestra los permisos en el Explorador de API de pantalla completa y la opción de usar las credenciales de “Google OAuth 2.0” seleccionadas.

  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 ventana o pestaña nueva en tu navegador predeterminado. Si esto no funciona, copia la URL de la terminal y ábrela en tu navegador de forma manual.

    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 usar en la autorización.

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

  8. La muestra continuará automáticamente, y puedes cerrar la pestaña del navegador que usaste para el flujo de Auth.

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

Lecturas adicionales