Guida rapida per Node.js

Crea un'applicazione a riga di comando Node.js che effettua richieste all'API Google Chat.

Le guide rapide spiegano come configurare ed eseguire un'app che chiama un'API Google Workspace. Questa guida rapida utilizza un approccio di autenticazione semplificato adatto a un ambiente di test. Per un ambiente di produzione, ti consigliamo di scoprire di più su autenticazione e autorizzazione prima di scegliere le credenziali di accesso adatte alla tua app.

Questa guida rapida utilizza le librerie client API consigliate di Google Workspace per gestire alcuni dettagli del flusso di autenticazione e autorizzazione.

Obiettivi

  • Configurare l'ambiente.
  • Installa la libreria client.
  • Configura il campione.
  • Esegui il campione.

Prerequisiti

Per eseguire questa guida rapida, devi soddisfare i seguenti prerequisiti:

Configura l'ambiente

Per completare questa guida rapida, configura il tuo ambiente.

Abilita l'API

Prima di utilizzare le API di Google, devi attivarle in un progetto Google Cloud. Puoi attivare una o più API in un singolo progetto Google Cloud.
  • Nella console Google Cloud, abilita l'API Google Chat.

    Abilita l'API

Se utilizzi un nuovo progetto Google Cloud per completare questa guida rapida, configura la schermata per il consenso OAuth. Se hai già completato questo passaggio per il tuo progetto Cloud, vai alla sezione successiva.

  1. Nella console Google Cloud, vai a Menu > Google Auth platform > Branding.

    Vai a Branding

  2. Se hai già configurato Google Auth platform, puoi configurare le seguenti impostazioni della schermata per il consenso OAuth in Branding, Pubblico e Accesso ai dati. Se viene visualizzato il messaggio Google Auth platform non ancora configurata, fai clic su Inizia:
    1. In Informazioni sull'app, nel campo Nome app, inserisci un nome per l'app.
    2. In Email dell'assistenza utente, scegli un indirizzo email dell'assistenza a cui gli utenti possono contattarti in caso di domande sul loro consenso.
    3. Fai clic su Avanti.
    4. Nella sezione Pubblico, seleziona Interno.
    5. Fai clic su Avanti.
    6. In Informazioni di contatto, inserisci un indirizzo email a cui ricevere notifiche in caso di modifiche al tuo progetto.
    7. Fai clic su Avanti.
    8. In Fine, esamina le Norme relative ai dati utente dei servizi API di Google e, se le accetti, seleziona Accetto le Norme relative ai dati utente dei servizi API di Google.
    9. Fai clic su Continua.
    10. Fai clic su Crea.
  3. Per ora puoi saltare l'aggiunta degli ambiti. In futuro, quando crei un'app da utilizzare al di fuori della tua organizzazione Google Workspace, devi modificare il Tipo di utente in Esterno. Poi aggiungi gli ambiti di autorizzazione richiesti dalla tua app. Per saperne di più, consulta la guida completa Configurare il consenso OAuth.

Autorizzare le credenziali per un'applicazione desktop

Per autenticare gli utenti finali e accedere ai dati utente nella tua app, devi creare uno o più ID client OAuth 2.0. L'ID client viene utilizzato per identificare una singola app nei server OAuth di Google. Se l'app viene eseguita su più piattaforme, devi creare un ID client separato per ciascuna piattaforma.
  1. Nella console Google Cloud, vai a Menu > Google Auth platform > Client.

    Vai a Clienti

  2. Fai clic su Crea cliente.
  3. Fai clic su Tipo di applicazione > App per computer.
  4. Nel campo Nome, digita un nome per la credenziale. Questo nome viene visualizzato solo nella console Google Cloud.
  5. Fai clic su Crea.

    La credenziale appena creata viene visualizzata in "ID client OAuth 2.0".

  6. Salva il file JSON scaricato come credentials.json e sposta il file nella directory di lavoro.

Configurare l'app Google Chat

Per chiamare l'API Google Chat, devi configurare un'app Google Chat. Per qualsiasi richiesta di scrittura, Google Chat attribuisce l'app Google Chat nell'UI utilizzando le seguenti informazioni.

  1. Nella console Google Cloud, vai alla pagina Configurazione dell'API Chat:

    Vai alla pagina di configurazione dell'API Chat

  2. Nella sezione Informazioni sull'applicazione, inserisci le seguenti informazioni:

    1. Nel campo Nome app, inserisci Chat API quickstart app.
    2. Nel campo URL avatar, inserisci https://developers.google.com/chat/images/quickstart-app-avatar.png.
    3. Nel campo Descrizione, inserisci Quickstart for calling the Chat API.
  3. In Funzionalità interattive, fai clic sul pulsante di attivazione/disattivazione Attiva funzionalità interattive per disabilitare le funzionalità interattive per l'app Chat.

  4. Fai clic su Salva.

installa la libreria client

  • Installa le librerie utilizzando npm:

    npm install @google-apps/chat @google-cloud/local-auth@2.1.0 --save
    

Configura il campione

  1. Nella directory di lavoro, crea un file denominato index.js.

  2. Nel file, incolla il seguente codice:

    chat/quickstart/index.js
    import path from 'node:path';
    import process from 'node:process';
    import {ChatServiceClient} from '@google-apps/chat';
    import {authenticate} from '@google-cloud/local-auth';
    
    const SCOPES = ['https://www.googleapis.com/auth/chat.spaces.readonly'];
    const CREDENTIALS_PATH = path.join(process.cwd(), 'credentials.json');
    
    /**
     * Lists spaces with user credential.
     */
    async function listSpaces() {
      const authClient = await authenticate({
        scopes: SCOPES,
        keyfilePath: CREDENTIALS_PATH,
      });
    
      // Create a client
      const chatClient = new ChatServiceClient({
        authClient,
        scopes: SCOPES,
      });
    
      // Initialize request argument(s)
      const request = {
        // Filter spaces by space type (SPACE or GROUP_CHAT or DIRECT_MESSAGE)
        filter: 'space_type = "SPACE"',
      };
    
      // Make the request
      const pageResult = chatClient.listSpacesAsync(request);
    
      // Handle the response. Iterating over pageResult will yield results and
      // resolve additional pages automatically.
      for await (const response of pageResult) {
        console.log(response);
      }
    }
    
    await listSpaces();

Esegui il campione

  1. Nella directory di lavoro, esegui l'esempio:

    node .
    
  1. La prima volta che esegui l'esempio, ti viene chiesto di autorizzare l'accesso:
    1. Se non l'hai ancora fatto, accedi al tuo Account Google quando richiesto. Se hai eseguito l'accesso a più account, seleziona un account da utilizzare per l'autorizzazione.
    2. Fai clic su Accetto.

    L'applicazione Node.js viene eseguita e chiama l'API Google Chat.

    Le informazioni di autorizzazione vengono archiviate nel file system, quindi la volta successiva che esegui il codice di esempio non ti viene chiesto di autorizzare.

Passaggi successivi