Guida rapida per Node.js

Crea un'applicazione da riga di comando Node.js che effettua richieste all'API Google Apps Script.

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ù sull'autenticazione e sull'autorizzazione prima di scegliere le credenziali di accesso appropriate per la 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.
  • Installare la libreria client.
  • Configurare l'esempio.
  • Eseguire l'esempio.

Prerequisiti

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

  • Un Account Google con Google Drive abilitato.

Configurare l'ambiente

Per completare questa guida rapida, configura l'ambiente.

Abilitare 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 Apps Script.

    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 API di Google, vai a Menu > Piattaforma Google Auth > Branding.

    Vai a Branding

  2. Se hai già configurato la piattaforma Google Auth, puoi configurare le seguenti impostazioni della schermata per il consenso OAuth in Branding, Pubblico e Accesso ai dati. Se visualizzi il messaggio Google Auth platform not configured yet (La piattaforma Google Auth non è ancora configurata), fai clic su Get Started (Inizia):
    1. In Informazioni sull'app, nel campo Nome app, inserisci un nome per l'app.
    2. In Email di assistenza utente, scegli un indirizzo email di assistenza a cui gli utenti possono contattarti in caso di domande sul consenso.
    3. Fai clic su Avanti.
    4. In Pubblico, seleziona Interno.
    5. Fai clic su Avanti.
    6. In Dati di contatto, inserisci un indirizzo email a cui ricevere notifiche in caso di modifiche al 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: servizi API di Google.
    9. Fai clic su Continua.
    10. Fai clic su Crea.
  3. Per il momento, puoi saltare l'aggiunta di ambiti. In futuro, quando crei un'app da utilizzare al di fuori della tua organizzazione Google Workspace, devi impostare il Tipo di utente su Esterno. Aggiungi poi gli ambiti di autorizzazione richiesti dall'app. Per saperne di più, consulta la guida completa Configurare il consenso OAuth guide.

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 ogni piattaforma.
  1. Nella console API di Google, vai a Menu > Piattaforma Google Auth > Client.

    Vai a Client

  2. Fai clic su Crea client.
  3. Fai clic su Tipo di applicazione > App desktop.
  4. Nel campo Nome, digita un nome per la credenziale. Questo nome viene visualizzato solo nella console API di Google.
  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.

Installare la libreria client

  • Installa le librerie utilizzando npm:

    npm install googleapis@105 @google-cloud/local-auth@2.1.0 --save
    

Configurare l'esempio

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

  2. Nel file, incolla il seguente codice:

    apps-script/quickstart/index.js
    import path from 'node:path';
    import process from 'node:process';
    import {authenticate} from '@google-cloud/local-auth';
    import {google} from 'googleapis';
    
    const SCOPES = ['https://www.googleapis.com/auth/script.projects'];
    const CREDENTIALS_PATH = path.join(process.cwd(), 'credentials.json');
    
    /**
     * Creates a new script project, upload a file, and log the script's URL.
     */
    async function callAppsScript() {
      const auth = await authenticate({
        scopes: SCOPES,
        keyfilePath: CREDENTIALS_PATH,
      });
    
      const script = google.script({version: 'v1', auth});
      const project = await script.projects.create({
        requestBody: {
          title: 'My Script',
        },
      });
    
      if (!project.data.scriptId) {
        throw new Error('Failed to create project');
      }
    
      await script.projects.updateContent({
        scriptId: project.data.scriptId,
        auth,
        requestBody: {
          files: [
            {
              name: 'hello',
              type: 'SERVER_JS',
              source: 'function helloWorld() {\n  console.log("Hello, world!");\n}',
            },
            {
              name: 'appsscript',
              type: 'JSON',
              source:
                '{"timeZone":"America/New_York","exceptionLogging":' + '"CLOUD"}',
            },
          ],
        },
      });
      console.log(`https://script.google.com/d/${project.data.scriptId}/edit`);
    }
    
    await callAppsScript();

Eseguire l'esempio

  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 hai ancora eseguito l'accesso al tuo Account Google, fallo quando ti viene 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 Apps Script.

    Le informazioni di autorizzazione vengono archiviate nel file system, quindi la volta successiva che esegui il codice di esempio non ti verrà richiesta l'autorizzazione.

Passaggi successivi