Informació general de la lògica del servidor

La lògica del servidor Power Pages permet als creadors executar JavaScript de manera segura al servidor, afegint extensibilitat directament al temps d'execució del lloc.
 
Com que la lògica del servidor s'executa al servidor, s'amaga del navegador i està protegida per funcions web i permisos de taula. Afegeixes lògica a Power Pages Design Studio i la crees utilitzant Visual Studio Code, que proporciona IntelliSense i validació en temps de compilació.

Dataverse emmagatzema codi i configuració, de manera que la lògica del servidor es beneficia de la mateixa gestió del cicle de vida i canals de desplegament que altres components de Power Pages.

Flux lògic del servidor

Compatibilitat d'idiomes

La lògica del servidor permet als desenvolupadors escriure codi JavaScript natiu compatible amb l'estàndard ECMAScript 2023 sense suport per a APIs de navegador (com APIs DOM o fetchXMLHttpRequest). Certs patrons insegurs o restringits també estan bloquejats per garantir una execució segura. Per a més informació, vegeu Limitacions en l'autoria de lògica de servidors.

Què podeu fer amb la lògica del servidor

La lògica del servidor a Power Pages permet als creadors i desenvolupadors traslladar operacions crítiques del navegador al servidor per millorar el control, l'escalabilitat i la seguretat. Permet que el vostre lloc realitzi tasques i integracions complexes sense exposar lògica o dades sensibles al costat del client.

Utilitzant la lògica del servidor, pots:

  • Connecta't a serveis i APIs externs: Integra't de manera segura amb APIs REST, Azure Functions o altres sistemes empresarials per intercanviar dades, activar accions o recuperar informació dinàmica.
  • Realitzeu operacions de dades segures : executeu operacions del Dataverse, com ara consultar, actualitzar o suprimir registres, al servidor, aplicant la lògica de negocis i la validació de manera coherent.
  • Executeu lògica i transformacions personalitzades: processeu o manipuleu les dades abans de tornar-les al client. Per exemple, calcular totals, validar regles de negoci o enriquir dades mitjançant consultes externes.
  • Retorna les respostes processades a les pàgines: envia només les dades necessàries i filtrades a les pàgines del client, garantint una representació més ràpida i càrregues útils reduïdes.
  • Simplifiqueu l'autenticació segura: gestioneu les credencials de servei i les claus API al servidor en lloc del codi del client, mantenint pràctiques d'integració segures i compatibles.

Avantatges d'utilitzar la lògica del servidor

La lògica del servidor aporta extensibilitat a nivell empresarial a Power Pages, ajudant les organitzacions a construir experiències web més segures, escalables i mantenibles.

Els avantatges clau inclouen:

  • Seguretat millorada: Executeu i emmagatzemeu lògica de negoci, secrets i claus API al servidor—mai no els exposeu al navegador ni als usuaris finals.
  • Flexibilitat d'integració: Connecta Power Pages de manera fluida amb sistemes externs, incloent-hi Azure Functions, APIs REST, accions de Dataverse i serveis empresarials.
  • Rendiment i eficiència millorats: descarregueu càlculs pesats, validacions i processament de dades al servidor, reduint la càrrega de treball del client i millorant la capacitat de resposta de la pàgina.
  • Coherència entre canals: apliqueu la mateixa lògica a pàgines web, formularis i integracions, garantint una validació i un comportament uniformes de les dades a tota l'aplicació.
  • Manteniment centralitzat: actualitzeu o perfeccioneu la lògica en un sol lloc sense tornar a desplegar o editar diversos scripts o pàgines de client.

Protegir la lògica del servidor

Per executar codi a la lògica del servidor, els usuaris han de tenir els permisos adequats configurats pel creador. L'accés es regeix per rols web i permisos de taula, que també determinen si la lògica del servidor pot accedir a taules específiques.

API de lògica del servidor d'autenticació

No cal que incloguis un codi d'autenticació personalitzat. L'autenticació i l'autorització són gestionades per la sessió de l'aplicació. Totes les trucades a l'API de lògica del servidor han d'incloure un testimoni de falsificació de sol·licituds entre llocs (CSRF).

Configuració de governança per a trucades de servei extern

La lògica del servidor pot connectar-se a APIs REST externes, Azure Functions i altres sistemes empresarials per realitzar integracions al costat del servidor. Per evitar l'exfiltració de dades, els administradors de llogaters poden bloquejar les trucades HTTP sortints que la lògica del servidor fa lloc per lloc. Quan s'aplica aquest control de governança, qualsevol crida HTTP sortint que la lògica del servidor intenti falla. Per saber-ne més, vegeu Desactivar les trucades de servei extern des de la lògica del servidor.

Configuració del lloc

Utilitza la següent configuració opcional del lloc per ajudar a configurar la lògica del servidor:

Nom Descripció Valor per defecte
ServerLogic/Habilitat Activa / Desactiva la funció true
ServerLogic/AllowedDomains Restringir quins dominis externs es poden cridar Tots els dominis permesos
ServerLogic/TimeoutInSeconds Temps màxim d'execució (en segons). El temps d'espera es pot augmentar fins a 240 segons 120
ServerLogic/AllowNetworkingToAllDomains Permet la xarxa entre dominis Cert

URL de l'API de lògica del servidor

Construeix l'URL de l'API utilitzant aquest format:

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

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

 

Mètodes HTTP admesos

La lògica del servidor admet mètodes HTTP estàndard per realitzar operacions sobre dades o interactuar amb serveis externs. Cada mètode s'assigna a una funció que definiu al codi lògic del servidor.

Mètode Signatura de la funció Ús Descripció
REBRE funció get() { } Recupera dades.  S'utilitza per obtenir dades del Dataverse, d'API externes o de lògica de negoci personalitzada. Ideal per a operacions només de lectura on no es fan canvis de dades.
CORREU funció post() { } Crear registres o enviar dades noves.  S'utilitza habitualment per inserir registres nous al Dataverse o enviar dades a sistemes externs. Adequat per a enviaments de formularis o fluxos de treball que necessiten crear o activar accions.
POSAR funció put() { } Substitueix o actualitza registres.  Actualitza o substitueix un registre o un conjunt de dades sencer. Normalment s'utilitza per a actualitzacions completes o escenaris de sincronització.
PEDAÇ funció patch() { } Actualitzacions part d'un registre (upsert).  Realitza una actualització parcial de les dades existents sense substituir tot el registre. Utilitza aquest mètode quan només cal modificar camps específics.
ESBORRAR funció del() { } Suprimeix registres o camps.  Suprimeix registres o dades del Dataverse o d'un sistema extern. S'ha d'utilitzar amb precaució per evitar pèrdues de dades no desitjades.

Pas següent

Lògica del servidor d'autor

Objectes del servidor
Com interactuar amb les taules del Dataverse mitjançant la lògica del servidor