Guía de inicio rápido de Java

En esta guía de inicio rápido, se explica cómo configurar una aplicación simple de línea de comandos de Java que realiza solicitudes a la API de YouTube Data. En realidad, 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 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 Cloud. Completa las siguientes tareas en la consola de Cloud para tu proyecto:

  1. En el panel de la biblioteca, busca la versión 3 de la API de YouTube Data. Haz clic en el listado 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 en Aplicación de escritorio. Debes usar credenciales de OAuth 2.0 para las solicitudes que requieran 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 de OAuth 2.0 al 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 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 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 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 que se usa el método. El primer listado de la tabla es para mostrar los resultados por ID de canal.

    Haz clic en el símbolo de código del primer listado para abrir y propagar el Explorador de APIs en pantalla completa.

    Imagen que identifica la ubicación del vínculo simbólico del 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 Parámetros de solicitud, 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 debe mostrar el valor Clave de API. El Explorador de APIs usa credenciales de demostración de forma predeterminada para facilitar el inicio. Sin embargo, usarás tu propia clave de API para ejecutar la muestra de forma local.

      Imagen en la que se muestran 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 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) para que no necesites modificar el archivo build.gradle para ejecutar diferentes muestras.

  6. En la muestra 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 a 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 listado de la tabla. Ese 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 en el ejemplo en el que recuperaste información sobre el canal de GoogleDevelopers:

    1. En la sección de parámetros, en lugar de que se establezca el 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, el menú desplegable debe seleccionar la opción Google OAuth 2.0.

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

      Imagen en la que se muestran 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 debe intentar abrir una ventana o pestaña nueva en tu navegador predeterminado. Si falla, copia la URL de la terminal y ábrela de forma manual en tu navegador.

    Si aún no accediste a tu Cuenta de Google, se te pedirá que lo hagas. Si accediste a varias Cuentas de Google, se te pedirá que selecciones una cuenta para usar en 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 podrás cerrar la pestaña del navegador que se usó para el flujo de autenticación.

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

Lecturas adicionales