Krótkie wprowadzenie do Node.js

Tworzenie aplikacji wiersza poleceń Node.js, która wysyła żądania do interfejsu Google Chat API

Krótkie wprowadzenia wyjaśniają, jak skonfigurować i uruchomić aplikację, która wywołuje interfejs Google Workspace API. W tym krótkim wprowadzeniu używamy uproszczonego podejścia do uwierzytelniania, które jest odpowiednie dla środowiska testowego. W przypadku środowiska produkcyjnego zalecamy zapoznanie się z uwierzytelnianiem i autoryzacją przed wybraniem danych logowania odpowiednich dla Twojej aplikacji.

W tym krótkim wprowadzeniu używamy zalecanych przez Google Workspace bibliotek klienta API do obsługi niektórych szczegółów procesu uwierzytelniania i autoryzacji.

Cele

  • Skonfiguruj środowisko.
  • Zainstaluj bibliotekę klienta.
  • Skonfiguruj próbkę.
  • Uruchom próbkę.

Wymagania wstępne

Aby uruchomić to krótkie wprowadzenie, musisz spełnić te wymagania wstępne:

Konfigurowanie środowiska

Aby ukończyć to krótkie wprowadzenie, skonfiguruj środowisko.

Włącz API

Zanim zaczniesz korzystać z interfejsów API Google, musisz je włączyć w projekcie w chmurze Google. W jednym projekcie Google Cloud możesz włączyć co najmniej 1 interfejs API.
  • W konsoli Google Cloud włącz interfejs Google Chat API.

    Włącz API

Jeśli do ukończenia tego krótkiego wprowadzenia używasz nowego projektu w chmurze Google Cloud, skonfiguruj ekran zgody OAuth. Jeśli ten krok został już wykonany w przypadku projektu w chmurze, przejdź do następnej sekcji.

  1. W konsoli interfejsów API Google otwórz Menu > Platforma uwierzytelniania Google > Elementy marki.

    Przejdź na stronę Elementy marki

  2. Jeśli platforma uwierzytelniania Google została już skonfigurowana, możesz skonfigurować te ustawienia ekranu zgody OAuth w sekcjach Elementy marki, Odbiorcy i Dostęp do danych. Jeśli zobaczysz komunikat Platforma uwierzytelniania Google nie została jeszcze skonfigurowana, kliknij Rozpocznij:
    1. W sekcji Informacje o aplikacji w polu Nazwa aplikacji wpisz nazwę aplikacji.
    2. W polu Adres e-mail dla użytkowników potrzebujących pomocy wybierz adres e-mail, na który użytkownicy mogą się kontaktować, jeśli mają pytania dotyczące zgody.
    3. Kliknij Dalej.
    4. W sekcji Odbiorcy wybierz Wewnętrzni.
    5. Kliknij Dalej.
    6. W sekcji Dane kontaktowe wpisz Adres e-mail, na który chcesz otrzymywać powiadomienia o zmianach w projekcie.
    7. Kliknij Dalej.
    8. W sekcji Zakończ zapoznaj się z Zasadami dotyczącymi danych użytkownika w usługach interfejsu API Google. Jeśli się z nimi zgadzasz, zaznacz pole Akceptuję zasady dotyczące danych użytkownika w usługach interfejsu API Google.
    9. Kliknij Dalej.
    10. Kliknij Utwórz.
  3. Na razie możesz pominąć dodawanie zakresów. W przyszłości, gdy będziesz tworzyć aplikację do użytku poza organizacją Google Workspace, musisz zmienić Typ użytkownika na Zewnętrzny. Następnie dodaj zakresy autoryzacji wymagane przez aplikację. Więcej informacji znajdziesz w pełnym przewodniku Konfigurowanie ekranu zgody OAuth.

Autoryzowanie danych logowania aplikacji komputerowej

Aby uwierzytelniać użytkowników i uzyskiwać dostęp do danych użytkowników w aplikacji, musisz utworzyć co najmniej 1 identyfikator klienta OAuth 2.0. Identyfikator klienta wskazuje konkretną aplikację na serwerach OAuth Google. Jeśli Twoja aplikacja działa na kilku platformach, musisz utworzyć osobny identyfikator klienta dla każdej z nich.
  1. W konsoli Google Cloud otwórz Menu > Platforma uwierzytelniania Google > Klienci.

    Otwórz stronę Klienci

  2. Kliknij Utwórz klienta.
  3. Kliknij Typ aplikacji > Aplikacja komputerowa.
  4. W polu Nazwa wpisz nazwę danych logowania. Ta nazwa jest widoczna tylko w konsoli Google Cloud.
  5. Kliknij Utwórz.

    Nowo utworzone dane logowania pojawią się w sekcji „Identyfikatory klientów OAuth 2.0”.

  6. Zapisz pobrany plik JSON jako credentials.json i przenieś plik do katalogu roboczego.

Konfigurowanie aplikacji Google Chat

Aby wykonywać wywołania interfejsu Google Chat API, które tworzą, aktualizują i usuwają dane, musisz skonfigurować aplikację Google Chat. W przypadku wszystkich żądań zapisu Google Chat przypisuje aplikację Google Chat w interfejsie, używając tych informacji:

  1. W konsoli interfejsów API Google otwórz stronę Konfiguracja interfejsu Chat API:

    Otwórz stronę konfiguracji interfejsu Chat API

  2. W sekcji Informacje o aplikacji wpisz te informacje:

    1. W polu Nazwa aplikacji wpisz Chat API quickstart app.
    2. W polu Adres URL awatara wpisz https://developers.google.com/chat/images/quickstart-app-avatar.png.
    3. W polu Opis wpisz Quickstart for calling the Chat API.
  3. W sekcji Funkcje interaktywne kliknij przełącznik Włącz funkcje interaktywne, aby wyłączyć funkcje interaktywne aplikacji do obsługi czatu.

  4. Kliknij Zapisz.

Instalowanie bibliotek klienta

  • Zainstaluj biblioteki za pomocą npm:

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

Konfigurowanie próbki

  1. W katalogu roboczym utwórz plik o nazwie index.js.

  2. Wklej do pliku ten kod:

    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';
    
    // The scope for reading Chat spaces.
    const SCOPES = ['https://www.googleapis.com/auth/chat.spaces.readonly'];
    // The path to the credentials file.
    const CREDENTIALS_PATH = path.join(process.cwd(), 'credentials.json');
    
    /**
     * Lists the spaces that the user is a member of.
     */
    async function listSpaces() {
      // Authenticate with Google and get an authorized client.
      const authClient = await authenticate({
        scopes: SCOPES,
        keyfilePath: CREDENTIALS_PATH,
      });
    
      // Create a new Chat API client.
      const chatClient = new ChatServiceClient({
        authClient,
        scopes: SCOPES,
      });
    
      // The request to list spaces.
      const request = {
        // Filter spaces by type. In this case, we are only interested in "SPACE" type.
        filter: 'space_type = "SPACE"',
      };
    
      // Make the API request.
      const pageResult = chatClient.listSpacesAsync(request);
    
      // Process the response.
      // The `pageResult` is an async iterable that will yield each space.
      for await (const response of pageResult) {
        console.log(response);
      }
    }
    
    await listSpaces();

Uruchamianie próbki

  1. W katalogu roboczym uruchom próbkę:

    node .
    
  1. Gdy uruchomisz próbkę po raz pierwszy, pojawi się prośba o autoryzację dostępu:
    1. Jeśli nie zalogujesz się na swoje konto Google, zrób to, gdy pojawi się prośba. Jeśli korzystasz z kilku kont, wybierz jedno, którego chcesz użyć do autoryzacji.
    2. Kliknij Akceptuję.

    Twoja aplikacja Node.js uruchomi się i wywoła interfejs Google Chat API.

    Informacje o autoryzacji są przechowywane w systemie plików, więc gdy następnym razem uruchomisz przykładowy kod, nie zobaczysz prośby o autoryzację.

Dalsze kroki