Web API Datenoperationen Beispiele (Client-seitiges JavaScript)

Dieser Artikel enthält allgemeine Informationen zu Web-API-Beispielen mit clientseitigem JavaScript. Während sich jedes Beispiel auf einen anderen Aspekt beim Microsoft Dataverse Web API fokussiert, folgen sie alle ähnlichen Prozessen und Strukturen, die in diesem Thema beschrieben werden.

Web API Beispiele die clientseitiges JavaScript verwenden

Die folgenden Beispiele verwenden die Muster, die hier beschriebene werden:

Probe Beispielgruppe Beschreibung
Beispiele grundlegender Web API-Operationen (clientseitiges JavaScript) Beispiel grundlegender Web-API-Operationen Veranschaulicht, wie Dataverse-Tabellenzeilen (Entitätsdatensätze) erstellt, abgerufen, aktualisiert, gelöscht zugeordnet und aufgehoben werden.
Web API-Abfragedatenbeispiele (clientseitiges JavaScript) Web API-Abfragedatenbeispiel Veranschaulicht, wie OData v4-Abfragesyntax und -Funktionen und Dataverse-Abfragefunktionen verwendet werden. Enthält Veranschaulichung des Arbeitens von vordefinierten Abfragen und die Verwendung von FetchXML, um Abfragen ausführen.
Beispiele bedingter Web API-Operationen (clientseitiges JavaScript) Beispiel bedingter Web-API-Operationen Veranschaulicht, wie bedingte Operationen ausgeführt werden. Die Verhaltensweisen der Vorgänge hängt von den Kriterien ab, die Sie angeben.
Beispiele von Web API-Funktionen und Aktionen (clientseitiges JavaScript) Web API-Funktionen- und Aktionen-Beispiel Veranschaulicht, wie Sie gebundene/ungebundene Funktionen und Aktionen, einschließlich benutzerdefinierte Aktionen verwenden.

Wie der Quellcode für das Beispiel heruntergeladen wird.

Der Quellcode für jedes Sample ist auf GitHub verfügbar. Der Link, um jedes Beispiels herunterzuladen ist in den einzelnen Seiten für dieses Beispiel enthalten.

Nachdem Sie das Beispiel heruntergeladen haben, extrahieren Sie die komprimierte Datei. Finden Sie die Lösung für die einzelnen Beispiele im C#-Ordner, da das Projekt ein leeres ASP.NET-Webanwendungsprojekt ist. Eine Dataverse-Lösung wird auch im Download bereitgestellt, den Sie importieren und ausführen können.

Hinweis

Weder Visual Studio noch ASP.NET sind erforderlich, um clientseitiges JavaScript für Dataverse zu entwickeln. Allerdings bietet Visual Studio eine gute Erfahrung beim Schreiben von JavaScript.

So importieren Sie die Dataverse-Lösung, die das Beispiel enthält.

In jedem Projekt finden Sie eine verwaltete Dataverse-Lösungsdatei. Der Name dieser Datei hängt vom Projektnamen des Beispiel ab, aber der Dateiname endet mit _managed.zip.

Gehen Sie wie folgt vor, um die Dataverse-Lösung auf Ihren Dataverse-Server zu importieren:

  1. Extrahieren Sie den Inhalt der heruntergeladenen ZIP-Datei, und suchen Sie die Dataverse-Lösungsdatei, die auch eine ZIP-Datei ist. Wenn Sie das Basic Operations-Beispiel heruntergeladen haben, suchen Sie die Dataverse-Lösungs-ZIP-Datei namens WebAPIBasicOperations\WebAPIBasicOperations_1_0_0_0_managed.zip.

  2. Wechseln Sie auf der Dataverse-UI zu Einstellungen > Lösungen. Auf dieser Seite werden alle Lösungen auf dem Dataverse-Server angezeigt. Nachdem Sie die Lösung importiert haben, wird der Lösungsname für dieses Beispiel in dieser Liste dargestellt(z. B.: Web API Grundlagen-Vorgänge).

  3. Wählen Sie Importieren und befolgen Sie die Anweisungen im Importdialog, um diese Aktion abzuschließen.

Wie ein Beispiel ausgeführt wird, um das Skript in Aktion zu sehen

Das Beispielprogramm wird als Webressource in Dataverse ausgeführt. Die importierte Lösung stellt eine Konfigurationsseite bereit, die Ihnen eine Option gibt, um Beispieldaten zu behalten oder zu löschen und eine Schaltfläche, um das Beispielprogramm zu starten.

Um das Beispiel auszuführen, gehen Sie wie folgt vor:

  1. Wählen Sie auf der Seite Alle Lösungen in Dataverse den Lösungsnamen aus (z. B.: Link Grundlegende Web-API-Vorgänge). Dies öffnet die Eigenschaften der Lösung in einem neuen Fenster.

  2. Wählen Sie Konfigurationen aus dem linken Navigationsmenü aus.

  3. Wählen Sie die Schaltfläche Beispiel starten, um den Beispielcode auszuführen.

Allgemeine Elemente in jedem Beispiel

In der folgenden Liste werden einige allgemeine Elemente markiert, die Beispiele in jedem dieser anzeigt.

  • Die Sdk.startSample-Funktion wird aufgerufen, wenn ein Benutzer die Schaltfläche Beispiel starten auf der HTML-Seite auswählt. Die Sdk.startSample-Funktion initialisiert globale Variablen und startet den ersten Vorgang in der Kette.

  • Programmausgabe und -Fehlermeldungen werden an die Debuggerkonsole des Browsers gesendet. Um die Ausgabe zu sehen, öffnen Sie das Konsolenfenster zuerst, bevor Sie das Beispiel ausführen. Drücken Sie F12, um auf die Entwicklertools, einschließlich des Konsolenfensters, im Microsoft Edge-Browser zuzugreifen.

  • Diese Beispiele verwenden die browsereigene ES6-Zusage Implementierung für moderne Browser, die sie unterstützen.

    Versprechen sind nicht erforderlich. Ähnliche Interaktionen können mithilfe der Rückruffunktionen ausgeführt werden.

  • Die Sdk.request-Funktion bearbeitet die Anforderung anhand der Informationen, die als Parameter übergeben werden. Je nach Anforderung eines Beispiels können die weitergegebenen Parameter unterschiedlich sein. Weitere Informationen finden Sie im Quellcode dieses Beispiels.

    /**
    * @function request
    * @description Generic helper function to handle basic XMLHttpRequest calls.
    * @param {string} action - The request action. String is case-sensitive.
    * @param {string} uri - An absolute or relative URI. Relative URI starts with a "/".
    * @param {object} data - An object representing an entity. Required for create and update actions.
    * @returns {Promise} - A Promise that returns either the request object or an error object.
    */
    Sdk.request = function (action, uri, data) {
      if (!RegExp(action, "g").test("POST PATCH PUT GET DELETE")) {
        // Expected action verbs.
        throw new Error(
          "Sdk.request: action parameter must be one of the following: " +
            "POST, PATCH, PUT, GET, or DELETE."
        );
      }
      if (!typeof uri === "string") {
        throw new Error("Sdk.request: uri parameter must be a string.");
      }
      if (
        RegExp(action, "g").test("POST PATCH PUT") &&
        (data === null || data === undefined)
      ) {
        throw new Error(
          "Sdk.request: data parameter must not be null for operations that create or modify data."
        );
      }
    
      // Construct a fully qualified URI if a relative URI is passed in.
      if (uri.charAt(0) === "/") {
        uri = clientUrl + webAPIPath + uri;
      }
    
      return new Promise(function (resolve, reject) {
        var request = new XMLHttpRequest();
        request.open(action, encodeURI(uri), true);
        request.setRequestHeader("OData-MaxVersion", "4.0");
        request.setRequestHeader("OData-Version", "4.0");
        request.setRequestHeader("Accept", "application/json");
        request.setRequestHeader(
          "Content-Type",
          "application/json; charset=utf-8"
        );
        request.onreadystatechange = function () {
          if (this.readyState === 4) {
            request.onreadystatechange = null;
            switch (this.status) {
              case 200: // Success with content returned in response body.
              case 204: // Success with no content returned in response body.
                resolve(this);
                break;
              default: // All other statuses are unexpected so are treated like errors.
                var error;
                try {
                  error = JSON.parse(request.response).error;
                } catch (e) {
                  error = new Error("Unexpected Error");
                }
                reject(error);
                break;
            }
          }
        };
        request.send(JSON.stringify(data));
      });
    };
    

    Die Sdk.request-Funktion gibt ein Versprechen zurück. Wenn die Anforderung, die vom Versprechen eingebunden ist, abgeschlossen ist, wird das Versprechen entweder aufgelöst oder abgelehnt. Wenn es abgeschlossen wird, ist die Funktion in der folgenden then-Methode bezeichnet. Wenn sie zurückgewiesen wird, wird die Funktion in der folgenden catch-Methode bezeichnet. Wenn die Funktion in der then Methode selber ein Versprechen zurück gibt, kann die Kette von Vorgängen in nachfolgenden then Methoden weitergeführt werden. Das Zurückgeben eines Versprechens gibt uns die Möglichkeit, diese Beispielvorgänge so zusammenzufassen, dass sie von vielen Entwicklern gegenüber traditionellen Rückruffunktionen bevorzugt wird. Weitere Informationen Promise Sie unter JavaScript promise.

Siehe auch

Dataverse-Web-API verwenden
Web API Beispiele
Web API Beispiele (C#)

Hinweis

Können Sie uns Ihre Präferenzen für die Dokumentationssprache mitteilen? Nehmen Sie an einer kurzen Umfrage teil. (Beachten Sie, dass diese Umfrage auf Englisch ist.)

Die Umfrage dauert etwa sieben Minuten. Es werden keine personenbezogenen Daten erhoben. (Datenschutzbestimmungen).