Übersicht über Die Serverlogik

Mit Power Pages-Serverlogik können Entwickler JavaScript sicher auf dem Server ausführen und die Erweiterbarkeit direkt zur Websitelaufzeit hinzufügen.
 
Da die Serverlogik auf dem Server ausgeführt wird, ist sie im Browser ausgeblendet und durch Webrollen und Tabellenberechtigungen geschützt. Fügen Sie Logik im Power Pages Design Studio hinzu und verfassen Sie sie mithilfe von Visual Studio Code, das IntelliSense und Kompilierungszeitüberprüfung bereitstellt.

Dataverse speichert Code und Konfiguration, sodass die Serverlogik von der gleichen Lebenszyklusverwaltungs- und Bereitstellungspipeline wie andere Power Pages-Komponenten profitiert.

Serverlogikfluss

Sprachunterstützung

Mit Serverlogik können Entwickler systemeigenen JavaScript-Code schreiben, der mit dem ECMAScript 2023-Standard kompatibel ist, ohne dass Browser-APIs unterstützt werden (z. B. DOM-APIs fetch oder XMLHttpRequest). Bestimmte unsichere oder eingeschränkte Muster werden ebenfalls blockiert, um eine sichere Ausführung sicherzustellen. Weitere Informationen finden Sie unter Einschränkungen bei der Erstellungsserverlogik.

Was Sie mit Serverlogik tun können

Die Serverlogik in Power Pages ermöglicht Es Entwicklern und Entwicklern, kritische Vorgänge vom Browser auf den Server zu verschieben, um die Kontrolle, Skalierbarkeit und Sicherheit zu verbessern. Sie ermöglicht Es Ihrer Website, komplexe Aufgaben und Integrationen durchzuführen, ohne sensible Logik oder Daten auf clientseitiger Seite verfügbar zu machen.

Mithilfe der Serverlogik können Sie folgende Aktionen ausführen:

  • Herstellen einer Verbindung mit externen Diensten und APIs: Sichere Integration in REST-APIs, Azure Functions oder andere Geschäftssysteme, um Daten auszutauschen, Aktionen auszulösen oder dynamische Informationen abzurufen.
  • Ausführen von sicheren Datenvorgängen: Ausführen von Dataverse-Vorgängen wie Abfragen, Aktualisieren oder Löschen von Datensätzen auf dem Server, Anwenden von Geschäftslogik und Validierung konsistent.
  • Führen Sie benutzerdefinierte Logik und Transformationen aus: Verarbeiten oder Bearbeiten von Daten, bevor Sie sie an den Client zurückgeben. Berechnen Sie beispielsweise Summen, überprüfen Sie Geschäftsregeln, oder bereichern Sie Daten mithilfe externer Nachschlagevorgänge.
  • Geben Sie verarbeitete Antworten an Kundenseiten zurück: Senden Sie nur die erforderlichen und gefilterten Daten, um ein schnelleres Rendering und eine verringerte Datenlast sicherzustellen.
  • Vereinfachen der sicheren Authentifizierung: Verwalten von Dienstanmeldeinformationen und API-Schlüsseln auf dem Server und nicht im Clientcode, Aufrechterhaltung sicherer und konformer Integrationsmethoden.

Vorteile der Verwendung von Serverlogik

Die Serverlogik bietet die Erweiterbarkeit auf Unternehmensniveau für Power Pages und hilft Organisationen dabei, sicherere, skalierbarere und wartungsfähige Weboberflächen zu erstellen.

Zu den wichtigsten Vorteilen gehören:

  • Erweiterte Sicherheit: Ausführen und Speichern von Geschäftslogik, geheimen Schlüsseln und API-Schlüsseln auf dem Server – machen sie niemals im Browser oder für Endbenutzer verfügbar.
  • Integrationsflexibilität: Verbinden Sie Power Pages nahtlos mit externen Systemen, einschließlich Azure Functions, REST-APIs, Dataverse-Aktionen und Geschäftsdiensten.
  • Verbesserte Leistung und Effizienz: Entladen Sie hohe Berechnungen, Validierungen und Datenverarbeitung auf den Server, reduzieren Sie die clientseitige Arbeitsauslastung und verbessern die Reaktionsfähigkeit der Seite.
  • Konsistenz über Kanäle hinweg: Wenden Sie die gleiche Logik auf Webseiten, Formulare und Integrationen an, und stellen Sie eine einheitliche Datenüberprüfung und ein einheitliches Verhalten in der gesamten Anwendung sicher.
  • Zentrale Wartung: Aktualisieren oder Verfeinern der Logik an einem Ort, ohne mehrere Clientskripts oder Seiten erneut bereitzustellen oder zu bearbeiten.

Sichern der Serverlogik

Um Code in der Serverlogik auszuführen, müssen Benutzer über die entsprechenden Berechtigungen verfügen, die vom Hersteller konfiguriert wurden. Der Zugriff unterliegt Webrollen und Tabellenberechtigungen, die auch bestimmen, ob Serverlogik auf bestimmte Tabellen zugreifen kann.

Authentifizieren der Serverlogik-API

Sie müssen keinen benutzerdefinierten Authentifizierungscode einschließen. Authentifizierung und Autorisierung werden von der Anwendungssitzung verwaltet. Alle Serverlogik-API-Aufrufe müssen ein CSRF-Token (Cross-Site Request Forgery) enthalten.

Governance-Einstellung für externe Service-Aufrufe

Serverlogik kann eine Verbindung mit externen REST-APIs, Azure Functions und anderen Geschäftssystemen herstellen, um serverseitige Integrationen durchzuführen. Um datenexfiltration zu verhindern, können Mandantenadministratoren ausgehende HTTP-Aufrufe blockieren , die von der Serverlogik auf Standortbasis ausgeführt werden. Wenn dieses Governance-Steuerelement erzwungen wird, schlägt jeder ausgehende HTTP-Aufruf fehl, den die Serverlogik versucht. Weitere Informationen finden Sie unter Deaktivieren externer Dienstaufrufe aus Serverlogik.

Standorteinstellungen

Verwenden Sie die folgenden optionalen Websiteeinstellungen, um die Serverlogik zu konfigurieren:

Name Description Vorgabe
ServerLogic/Aktiviert Feature aktivieren/deaktivieren true
ServerLogic/AllowedDomains Einschränken, welche externen Domänen aufgerufen werden können Alle zulässigen Domänen
ServerLogic/TimeoutInSeconds Maximale Ausführungszeit (in Sekunden). Das Timeout kann auf bis zu 240 Sekunden erhöht werden. 120
ServerLogic/AllowNetworkingToAllDomains Netzwerk über Domänen hinweg zulassen Richtig

Serverlogik-API-URL

Erstellen Sie die API-URL mithilfe dieses Formats:

https://<site-url>/_api/serverlogics/<server-logic-name>  
Beispiel:

https://contoso.powerappsportals.com/_api/serverlogics/exchangerate

 

Unterstützte HTTP-Methoden

Serverlogik unterstützt standardmäßige HTTP-Methoden zum Ausführen von Vorgängen mit Daten oder interagieren mit externen Diensten. Jede Methode ist einer Funktion zugeordnet, die Sie in Ihrem Serverlogikcode definieren.

Methode Funktionssignatur Verwendung Description
GET function get() { } Daten abrufen.  Wird verwendet, um Daten aus Dataverse, externen APIs oder benutzerdefinierter Geschäftslogik abzurufen. Ideal für schreibgeschützte Vorgänge, bei denen keine Datenänderungen vorgenommen werden.
POST function post() { } Erstellen sie Datensätze, oder senden Sie neue Daten.  Wird häufig verwendet, um neue Datensätze in Dataverse einzufügen oder Daten an externe Systeme zu senden. Geeignet für Formularübermittlungen oder Workflows, die Aktionen erstellen oder auslösen müssen.
PUT function put() { } Ersetzen oder Aktualisieren von Datensätzen.  Aktualisiert oder ersetzt einen gesamten Datensatz. Wird in der Regel für vollständige Updates oder Synchronisierungsszenarien verwendet.
PATCH function patch() { } Aktualisiert ein Teil eines Datensatzes (Upsert).  Führt eine teilweise Aktualisierung vorhandener Daten durch, ohne den gesamten Datensatz zu ersetzen. Verwenden Sie diese Methode, wenn nur bestimmte Felder geändert werden müssen.
LÖSCHEN function del() { } Löschen von Datensätzen oder Feldern.  Entfernt Datensätze oder Daten aus Dataverse oder einem externen System. Sollte vorsichtig verwendet werden, um unbeabsichtigten Datenverlust zu verhindern.

Nächster Schritt

Autorenserverlogik

Serverobjekte
Interaktion mit Dataverse-Tabellen mithilfe der Serverlogik