Oversigt over serverlogik

Power Pages-serverlogik gør det muligt for udviklere at køre JavaScript sikkert på serveren og føje udvidelsesmulighed direkte til webstedets kørsel.
 
Da serverlogik kører på serveren, er den skjult for browseren og beskyttet af webroller og tabeltilladelser. Du tilføjer logik i Power Pages design studio og opretter den ved hjælp af Visual Studio Code, som giver IntelliSense og validering af kompileringstid.

Dataverse gemmer kode og konfiguration, så serverlogik drager fordel af den samme livscyklusadministration og udrulningspipelines som andre Power Pages-komponenter.

Flow for serverlogik

Sprogunderstøttelse

Serverlogik gør det muligt for udviklere at skrive oprindelig JavaScript-kode, fetch der overholder ECMAScript 2023-standarden, uden at understøtte browser-API'er (f.eks. DOM API'er eller XMLHttpRequest). Visse usikre eller begrænsede mønstre er også blokeret for at sikre sikker udførelse. Du kan få flere oplysninger under Begrænsninger i oprettelse af serverlogik.

Hvad du kan gøre med serverlogik

Serverlogik i Power Pages gør det muligt for udviklere og udviklere at flytte kritiske handlinger fra browseren til serveren for at opnå forbedret kontrol, skalerbarhed og sikkerhed. Det gør det muligt for dit websted at udføre komplekse opgaver og integrationer uden at vise følsom logik eller data på klientsiden.

Ved hjælp af serverlogik kan du:

  • Opret forbindelse til eksterne tjenester og API'er: Integrer sikkert med REST API'er, Azure Functions eller andre virksomhedssystemer for at udveksle data, udløse handlinger eller hente dynamiske oplysninger.
  • Udfør sikre datahandlinger: Udfør Dataverse-handlinger – f.eks. forespørgsel, opdatering eller sletning af poster – på serveren, og anvend forretningslogik og validering konsekvent.
  • Kør brugerdefineret logik og transformationer: Behandl eller manipulere data, før du returnerer dem til klienten. Du kan f.eks. beregne totaler, validere forretningsregler eller forbedre data ved hjælp af eksterne opslag.
  • Returner behandlede svar på sider: Send kun de påkrævede og filtrerede data til klientsider, hvilket sikrer hurtigere gengivelse og reducerede nyttedata.
  • Gør sikker godkendelse enklere: Administrer tjenestelegitimationsoplysninger og API-nøgler på serveren i stedet for i klientkode, og vedligehold sikre og kompatible integrationspraksisser.

Fordele ved at bruge serverlogik

Serverlogik giver udvidelse i virksomhedsklassen til Power Pages, hvilket hjælper organisationer med at skabe mere sikre, skalerbare og vedligeholdbare weboplevelser.

De vigtigste fordele omfatter:

  • Forbedret sikkerhed: Udfør og gem forretningslogik, hemmeligheder og API-nøgler på serveren – vis dem aldrig i browseren eller for slutbrugere.
  • Integrationsfleksibilitet: Forbind Power Pages problemfrit med eksterne systemer, herunder Azure Functions, REST API'er, Dataverse-handlinger og forretningstjenester.
  • Forbedret ydeevne og effektivitet: Belastning af tunge beregninger, valideringer og databehandling til serveren, hvilket reducerer arbejdsbelastningen på klientsiden og forbedrer sidens svartid.
  • Ensartethed på tværs af kanaler: Anvend den samme logik på tværs af websider, formularer og integrationer, så der sikres ensartet datavalidering og -funktionsmåde i hele programmet.
  • Centraliseret vedligeholdelse: Opdater eller afgræns logik ét sted uden at geninstallere eller redigere flere klientscripts eller -sider.

Beskyt serverlogikken

Hvis du vil udføre kode i serverlogik, skal brugerne have de relevante tilladelser konfigureret af opretteren. Adgang styres af webroller og tabeltilladelser, som også bestemmer, om serverlogik kan få adgang til bestemte tabeller.

Godkend API til serverlogik

Du behøver ikke at inkludere brugerdefineret godkendelseskode. Godkendelse og autorisation administreres af programsessionen. Alle API-kald til serverlogik skal indeholde et CSRF-token (Cross-Site Request Forgery).

Styringsindstilling for opkald til eksterne tjenester

Serverlogik kan oprette forbindelse til eksterne REST API'er, Azure Functions og andre virksomhedssystemer for at udføre integrationer på serversiden. For at forhindre dataudfiltrering kan lejeradministratorer blokere udgående HTTP-kald , som serverlogik foretager på webstedsbasis. Når dette styringskontrolelement gennemtvinges, mislykkes alle udgående HTTP-kald, som serverlogik forsøger. Du kan få mere at vide under Deaktiver kald til eksterne tjenester fra serverlogik.

Indstillinger for websted

Brug følgende valgfrie webstedsindstillinger som en hjælp til at konfigurere serverlogik:

Name Beskrivelse Standard
ServerLogic/Aktiveret Aktivér/deaktiver funktion sand
ServerLogic/AllowedDomains Begræns, hvilke eksterne domæner der kan kaldes Alle domæner er tilladt
ServerLogic/TimeoutInSeconds Maksimal udførelsestid (i sekunder). Timeout kan øges op til 240 sekunder 120
ServerLogic/AllowNetworkingToAllDomains Tillad netværk på tværs af domæner Sand

URL-adresse til serverlogik-API

Opret API-URL-adressen ved hjælp af dette format:

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

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

 

Understøttede HTTP-metoder

Serverlogik understøtter standard HTTP-metoder til at udføre handlinger på data eller interagere med eksterne tjenester. Hver metode knyttes til en funktion, du definerer i din serverlogikkode.

Metode Funktionssignatur Brug Beskrivelse
funktionen get() { } Hent data.  Bruges til at hente data fra Dataverse, eksterne API'er eller brugerdefineret forretningslogik. Ideel til læs-only handlinger, hvor der ikke foretages dataændringer.
POST function post() { } Opret poster, eller send nye data.  Bruges ofte til at indsætte nye poster i Dataverse eller sende data til eksterne systemer. Egnet til formularindsendelser eller arbejdsprocesser, der skal oprette eller udløse handlinger.
PUT function put() { } Erstat eller opdater poster.  Opdaterer eller erstatter en hel post eller et datasæt. Bruges typisk til fulde opdateringer eller synkroniseringsscenarier.
PATCH funktionsrettelse() { } Opdaterer en del af en post (upsert).  Udfører en delvis opdatering af eksisterende data uden at erstatte hele optegnelsen. Brug denne metode, når det kun er bestemte felter, der skal ændres.
SLET function del() { } Slet poster eller felter.  Fjerner poster eller data fra Dataverse eller et eksternt system. Skal bruges forsigtigt for at forhindre utilsigtet tab af data.

Næste trin

Forfatterserverlogik

Serverobjekter
Sådan interagerer du med Dataverse-tabeller ved hjælp af serverlogik