JavaScript Consumer SDK einrichten

Plattform auswählen: Android iOS JavaScript

Mit dem JavaScript Consumer SDK kann Ihre Verbraucher-App den Standort von Fahrzeugen und anderen in Fleet Engine erfassten Orten von Interesse auf einer webbasierten Karte anzeigen. So können Ihre Kunden den Fortschritt des Fahrers verfolgen. In dieser Anleitung wird davon ausgegangen, dass Sie Fleet Engine mit dem zugehörigen Google Cloud-Projekt und den API-Schlüsseln eingerichtet haben. Weitere Informationen finden Sie unter Fleet Engine.

So richten Sie das JavaScript Consumer SDK ein:

  1. Maps JavaScript API aktivieren
  2. Autorisierung einrichten

Maps JavaScript API aktivieren

Aktivieren Sie die Maps JavaScript API in der Google Cloud Console. Weitere Informationen Weitere Informationen finden Sie in der Google Cloud-Dokumentation unter APIs aktivieren. Dadurch können die Consumer SDK für JavaScript

Autorisierung einrichten

Für API-Methodenaufrufe aus Low-Trust-Umgebungen benötigt Fleet Engine Verwendung von JSON-Webtokens (JWTs), die von einem entsprechenden Dienstkonto signiert wurden. Beispiele für Umgebungen mit geringem Vertrauen sind Smartphones und Browser. Ein JWT stammt von deinem Server, einer vollkommen vertrauenswürdigen Umgebung. Das JWT wird signiert, verschlüsselt und für nachfolgende Serverinteraktionen an den Client übergeben, bis es abläuft oder nicht mehr gültig ist.

Ihr Backend sollte sich mit der folgenden Methode bei Fleet Engine authentifizieren und autorisieren Standardmechanismen für Standardanmeldedaten für Anwendungen. Verwenden Sie JWTs, die von einem geeigneten Dienstkonto signiert wurden. Für eine Eine Liste der Dienstkontorollen finden Sie unter Fleet Engine-Dienstkontorollen. in Fleet Engine-Grundlagen.

Ihr Backend sollte sich dagegen mithilfe der standardmäßigen Mechanismen für Standardanmeldedaten für Anwendungen bei der Fleet Engine authentifizieren und autorisieren.

Wie funktioniert die Autorisierung?

Die Autorisierung mit Fleet Engine-Daten erfolgt sowohl server- als auch clientseitig Implementierung.

Serverseitige Autorisierung

Bevor Sie die Authentifizierung und Autorisierung in Ihrem webbasierten muss Ihr Back-End-Server in der Lage sein, JSON Web Tokens an Ihre webbasierte Anwendung für den Zugriff auf Fleet Engine Ihre webbasierte Anwendung sendet diese JWTs zusammen mit ihren Anfragen, damit Fleet Engine die Anfragen als die für den Zugriff auf die Daten im Eine Anleitung zur serverseitigen JWT-Implementierung findest du unter Issue JSON Web (Problem mit JSON Web) – Tokens unter Fleet Engine Essentials.

Beachten Sie beim Teilen des Fahrtverlaufs mit dem JavaScript Consumer SDK Folgendes:

Clientseitige Autorisierung

Wenn Sie das JavaScript Consumer SDK verwenden, wird über einen Autorisierungstoken-Abruf ein Token vom Server angefordert. Dies geschieht in folgenden Fällen:

  • Es ist kein gültiges Token vorhanden, beispielsweise wenn das SDK den Fetcher auf einem der Seitenaufbau neu geladen wird oder der Fetcher kein Token mehr zurückgegeben hat.

  • Das Token ist abgelaufen.

  • Das Token läuft innerhalb einer Minute ab.

Andernfalls verwendet das JavaScript Consumer SDK das zuvor ausgestellte gültige Token und ruft den Abruf nicht auf.

Abruf von Autorisierungstokens erstellen

Erstelle den Abrufmechanismus für Autorisierungstokens unter Berücksichtigung der folgenden Richtlinien:

  • Der Abruf muss eine Datenstruktur mit zwei Feldern zurückgeben, die wie unten dargestellt in einer Promise verpackt ist:

    • Einen String token.

    • Eine Zahl expiresInSeconds. Ein Token läuft in dieser Zeit ab nach dem Abrufen. Beim Abrufen von Authentifizierungstokens muss das Ablaufdatum überschritten werden. Zeit in Sekunden, vom Zeitpunkt des Abrufs bis zur Bibliothek, wie in für das Beispiel.

  • Der Abrufer sollte eine URL auf Ihrem Server aufrufen, um ein Token abzurufen. Diese URL (SERVER_TOKEN_URL) hängt von Ihrer Backend-Implementierung ab. Die folgende Beispiel-URL bezieht sich auf das Backend der Beispielanwendung auf GitHub:

    • https://SERVER_URL/token/consumer/TRIPID

Beispiel – Abruf eines Authentifizierungstokens erstellen

Die folgenden Beispiele zeigen, wie ein Autorisierungstoken-Abruf erstellt wird:

JavaScript

async function authTokenFetcher(options) {
  // options is a record containing two keys called
  // serviceType and context. The developer should
  // generate the correct SERVER_TOKEN_URL and request
  // based on the values of these fields.
  const response = await fetch(SERVER_TOKEN_URL);
  if (!response.ok) {
    throw new Error(response.statusText);
  }
  const data = await response.json();
  return {
    token: data.Token,
    expiresInSeconds: data.ExpiresInSeconds
  };
}

TypeScript

function authTokenFetcher(options: {
  serviceType: google.maps.journeySharing.FleetEngineServiceType,
  context: google.maps.journeySharing.AuthTokenContext,
}): Promise<google.maps.journeySharing.AuthToken> {
  // The developer should generate the correct
  // SERVER_TOKEN_URL based on options.
  const response = await fetch(SERVER_TOKEN_URL);
  if (!response.ok) {
    throw new Error(response.statusText);
  }
  const data = await response.json();
  return {
    token: data.token,
    expiresInSeconds: data.ExpiresInSeconds,
  };
}

Nächste Schritte

Fahrt in JavaScript verfolgen