JavaScript Consumer SDK einrichten

Plattform auswählen: Android iOS JavaScript

Mit dem JavaScript Consumer SDK kann Ihre Nutzer-App den Standort Fahrzeuge und andere Orte von Interesse, die in Fleet Engine auf einem webbasierten So können Ihre Kunden den Fortschritt der Fahrt sehen. In diesem Leitfaden wird davon ausgegangen, dass Sie Fleet Engine mit der zugehörigen Google Cloud eingerichtet haben Projekt- und API-Schlüssel. 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

Fleet Engine erfordert die Verwendung von JSON Web Tokens (JWTs), die von einem Entsprechendes Dienstkonto für API-Methodenaufrufe aus Low-Trust- Umgebungen. Zu den Umgebungen mit wenig Vertrauen gehören Smartphones und Browser. Ein JWT Sie stammen von Ihrem Server, einer voll vertrauenswürdigen Umgebung. Das JWT wird signiert, verschlüsselt und an den Client für den nachfolgenden Server übergeben. Interaktionen, bis sie 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. Marke Verwenden Sie JWTs, die von einem entsprechenden Dienstkonto signiert wurden. Für eine Eine Liste der Dienstkontorollen finden Sie unter Fleet Engine-Dienstkontorollen. in Fleet Engine-Grundlagen.

Wie funktioniert die Autorisierung?

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

Serverseitige Autorisierung

Bevor Sie die Autorisierung in Ihrer webbasierten Anwendung einrichten, muss der Server JSON Web Tokens bereitstellen können. So kann Fleet Engine erkennt die Anfragen, die von Ihrer Anwendung kommen, als für den Zugriff autorisiert sind. die Daten in der Anfrage. Eine Anleitung zur serverseitigen JWT-Implementierung findest du unter Geben Sie JSON Web Tokens in Fleet Engine Essentials aus.

Für das JavaScript Consumer SDK ist Folgendes zu beachten: zum Teilen der Reise:

Clientseitige Autorisierung

Wenn Sie das JavaScript Consumer SDK verwenden, fordert es mithilfe eines Abruf von Autorisierungstokens. Dies geschieht in folgenden Fällen:

  • Es ist kein gültiges Token vorhanden, z. B. wenn das SDK den Fetcher auf ein neuer Seitenaufbau oder der Abruf mit keinem Token zurückgegeben wurde.

  • 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 nutzt nicht den Fetcher aufrufen.

Abruf von Autorisierungstokens erstellen

Erstellen Sie den Abruf von Autorisierungstokens unter Berücksichtigung der folgenden Richtlinien:

  • Der Fetcher muss eine Datenstruktur mit zwei Feldern zurückgeben, die in eine Promise so:

    • 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 Fetcher sollte eine URL auf Ihrem Server aufrufen, um ein Token abzurufen. Dieses Die URL (SERVER_TOKEN_URL) hängt von Ihrer Back-End-Implementierung ab. Die Die folgende Beispiel-URL bezieht sich auf das Back-End der Beispiel-App 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

Reisen in JavaScript folgen