Merk
Tilgang til denne siden krever autorisasjon. Du kan prøve å logge på eller endre kataloger.
Tilgang til denne siden krever autorisasjon. Du kan prøve å endre kataloger.
Med Power Pages-serverlogikk kan beslutningstakere kjøre JavaScript sikkert på serveren, og legge til utvidelse direkte i kjøretiden for nettstedet.
Fordi serverlogikken kjører på serveren, er den skjult for nettleseren og beskyttet av nettroller og tabelltillatelser. Du legger til logikk i power pages design studio og redigerer det ved hjelp av Visual Studio Code, som gir IntelliSense og kompileringstidsvalidering.
Datavers lagrer kode og konfigurasjon, slik at serverlogikk drar nytte av samme livssyklusadministrasjon og distribusjonssamlebånd som andre Power Pages-komponenter.
Språkstøtte
Med serverlogikk kan utviklere skrive opprinnelig JavaScript-kode som samsvarer med ECMAScript 2023-standarden uten støtte for nettleser-API-er (for eksempel DOM-API-er fetch eller XMLHttpRequest). Visse usikre eller begrensede mønstre blokkeres også for å sikre sikker kjøring. Hvis du vil ha mer informasjon, kan du se Begrensninger i redigeringsserverlogikken.
Hva du kan gjøre med serverlogikk
Serverlogikk i Power Pages gjør det mulig for beslutningstakere og utviklere å flytte kritiske operasjoner fra nettleseren til serveren for bedre kontroll, skalerbarhet og sikkerhet. Det gjør det mulig for nettstedet å utføre komplekse oppgaver og integreringer uten å vise sensitiv logikk eller data på klientsiden.
Ved hjelp av serverlogikk kan du:
- Koble til eksterne tjenester og API-er: Integrer sikkert med REST-API-er, Azure Functions eller andre forretningssystemer for å utveksle data, utløse handlinger eller hente dynamisk informasjon.
- Utføre sikre dataoperasjoner: Utføre dataverse operasjoner , for eksempel spørring, oppdatering eller sletting av poster , på serveren, og bruk forretningslogikk og validering konsekvent.
- Kjør egendefinert logikk og transformasjoner: Behandle eller manipulere data før du returnerer dem til klienten. Du kan for eksempel beregne totaler, validere forretningsregler eller berike data ved hjelp av eksterne oppslag.
- Returner behandlede svar på sider: Send bare de nødvendige og filtrerte dataene til klientsider, noe som sikrer raskere gjengivelse og reduserte nyttelaster.
- Forenkle sikker godkjenning: Administrer tjenestelegitimasjon og API-nøkler på serveren i stedet for i klientkode, og vedlikehold sikker og kompatibel integreringspraksis.
Fordeler ved å bruke serverlogikk
Serverlogikk gir utvidelsesmuligheter i bedriftsklasse til Power Pages, slik at organisasjoner kan bygge sikrere, skalerbare og vedlikeholdbare nettopplevelser.
Viktige fordeler inkluderer:
- Forbedret sikkerhet: Utfør og lagre forretningslogikk, hemmeligheter og API-nøkler på serveren – vis dem aldri i nettleseren eller til sluttbrukere.
- Integreringsfleksibilitet: Koble Power Pages sømløst til eksterne systemer, inkludert Azure Functions, REST-API-er, Dataverse-handlinger og forretningstjenester.
- Forbedret ytelse og effektivitet: Avlast tunge beregninger, valideringer og databehandling til serveren, noe som reduserer arbeidsbelastningen på klientsiden og forbedrer responsen på siden.
- Konsekvens på tvers av kanaler: Bruk den samme logikken på tvers av nettsider, skjemaer og integreringer, noe som sikrer ensartet datavalidering og virkemåte i hele programmet.
- Sentralisert vedlikehold: Oppdater eller finjuster logikk på ett sted uten å distribuere eller redigere flere klientskript eller -sider på nytt.
Sikre serverlogikken
Hvis du vil kjøre kode i serverlogikk, må brukerne ha de riktige tillatelsene konfigurert av oppretteren. Tilgang styres av nettroller og tabelltillatelser, som også bestemmer om serverlogikken kan få tilgang til bestemte tabeller.
API for godkjenning av serverlogikk
Du trenger ikke å inkludere egendefinert godkjenningskode. Autentisering og autorisasjon håndteres av applikasjonsøkten. Alle API-kall for serverlogikk må inneholde et CSRF-token (Cross-Site Request Forgery).
Styringsinnstilling for eksterne tjenestesamtaler
Serverlogikk kan koble til eksterne REST-API-er, Azure Functions og andre forretningssystemer for å utføre integreringer på serversiden. Hvis du vil hindre dataeksfiltrering, kan leieradministratorer blokkere utgående HTTP-kall som serverlogikken foretar på område-for-område-basis. Når denne styringskontrollen håndheves, mislykkes alle utgående HTTP-kall som serverlogikken forsøker å foreta. Hvis du vil ha mer informasjon, kan du se deaktivere eksterne tjenestekall fra serverlogikk.
Områdeinnstillinger
Bruk følgende valgfrie nettstedsinnstillinger for å konfigurere serverlogikk:
| Navn | Beskrivelse | Standard |
|---|---|---|
| ServerLogic/Aktivert | Aktiver / deaktiver funksjon | sann |
| ServerLogic/TillatteDomener | Begrense hvilke eksterne domener som kan kalles | Alle domener tillatt |
| ServerLogic/TimeoutInSeconds | Maksimal kjøringstid (i sekunder). Tidsavbrudd kan økes opptil 240 sekunder | 120 |
| ServerLogic/TillatNettverkTilAlleDomener | Tillat nettverk på tvers av domener | Sann |
Serverlogikk-API-URL
Konstruer API-nettadressen ved hjelp av dette formatet:
https://<site-url>/_api/serverlogics/<server-logic-name>
Eksempel:
https://contoso.powerappsportals.com/_api/serverlogics/exchangerate
Støttede HTTP-metoder
Serverlogikk støtter standard HTTP-metoder for å utføre operasjoner på data eller samhandle med eksterne tjenester. Hver metode tilordnes til en funksjon du definerer i serverlogikkkoden.
| Metode | Funksjonssignatur | Bruk | Beskrivelse |
|---|---|---|---|
| GET | funksjon get() { } | Hent data. | Brukes til å hente data fra dataverse, eksterne API-er eller egendefinert forretningslogikk. Ideell for skrivebeskyttede operasjoner der ingen dataendringer gjøres. |
| POST | funksjon post() { } | Opprett poster eller send nye data. | Brukes vanligvis til å sette inn nye poster i Dataverse eller sende data til eksterne systemer. Egnet for skjemainnsendinger eller arbeidsflyter som må opprette eller utløse handlinger. |
| PUT | function put() { } | Erstatt eller oppdater registreringer. | Oppdaterer eller erstatter en hel post eller et helt datasett. Brukes vanligvis for fullstendige oppdateringer eller synkroniseringsscenarioer. |
| PATCH | funksjon patch() { } | Oppdaterer en del av en post (upsert). | Utfører en delvis oppdatering av eksisterende data uten å erstatte hele posten. Bruk denne metoden når bare bestemte felt trenger endring. |
| SLETTE | funksjon del() { } | Slett poster eller felt. | Fjerner poster eller data fra Dataverse eller et eksternt system. Bør brukes forsiktig for å forhindre utilsiktet tap av data. |
Neste trinn:
Relatert informasjon
Serverobjekter
Slik samhandler du med dataverse tabeller ved hjelp av serverlogikk