Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A lógica do servidor do Power Pages permite que os criadores executem o JavaScript com segurança no servidor, adicionando extensibilidade diretamente ao runtime do site.
Como a lógica do servidor é executada no servidor, ela fica oculta do navegador e protegida por funções Web e permissões de tabela. Adicione lógica no estúdio de design do Power Pages e crie-a usando o Visual Studio Code, que fornece o IntelliSense e a validação em tempo de compilação.
O Dataverse armazena código e configuração, então a lógica do servidor se beneficia do mesmo gerenciamento do ciclo de vida e pipelines de implantação que outros componentes do Power Pages.
Suporte ao idioma
A lógica do servidor permite que os desenvolvedores escrevam código JavaScript nativo em conformidade com o padrão ECMAScript 2023 sem suporte para APIs do navegador (como APIs fetch do DOM ou XMLHttpRequest). Determinados padrões não seguros ou restritos também são bloqueados para garantir a execução segura. Para obter mais informações, consulte Limitações na lógica do servidor de criação.
O que você pode fazer com a lógica do servidor
A lógica do servidor no Power Pages permite que os criadores e desenvolvedores movam operações críticas do navegador para o servidor para melhorar o controle, a escalabilidade e a segurança. Ele permite que seu site execute tarefas e integrações complexas sem expor a lógica ou os dados confidenciais no lado do cliente.
Usando a lógica do servidor, você pode:
- Conecte-se a serviços externos e APIs: integre-se com segurança às APIs REST, ao Azure Functions ou a outros sistemas de negócios para trocar dados, disparar ações ou recuperar informações dinâmicas.
- Executar operações de dados seguras: executar operações do Dataverse, como consultar, atualizar ou excluir registros, no servidor, aplicar lógica de negócios e validação consistentemente.
- Execute transformações e lógicas personalizadas: processe ou manipule dados antes de devolvê-los ao cliente. Por exemplo, calcule totais, valide regras de negócios ou enriqueça dados usando pesquisas externas.
- Retornar respostas processadas às páginas: envie apenas os dados necessários e filtrados para as páginas do cliente, garantindo uma renderização mais rápida e cargas reduzidas.
- Simplifique a autenticação segura: gerencie credenciais de serviço e chaves de API no servidor, em vez de no código do cliente, mantendo práticas de integração seguras e compatíveis.
Benefícios de usar a lógica do servidor
A lógica do servidor traz extensibilidade de nível empresarial para o Power Pages, ajudando as organizações a criar experiências da Web mais seguras, escalonáveis e mantenedíveis.
Os principais benefícios incluem:
- Segurança aprimorada: execute e armazene lógica de negócios, segredos e chaves de API no servidor— nunca os exponha no navegador ou aos usuários finais.
- Flexibilidade de integração: Conecte o Power Pages de maneira fácil a sistemas externos, incluindo Azure Functions, APIs REST, ações do Dataverse e serviços de negócios.
- Desempenho e eficiência aprimorados: descarregamento de cálculos pesados, validações e processamento de dados para o servidor, reduzindo a carga de trabalho do lado do cliente e melhorando a capacidade de resposta da página.
- Consistência entre canais: aplique a mesma lógica em páginas da Web, formulários e integrações, garantindo a validação e o comportamento de dados uniformes em todo o aplicativo.
- Manutenção centralizada: atualizar ou refinar a lógica em um só lugar sem reimplantar ou editar vários scripts ou páginas do cliente.
Proteger a lógica do servidor
Para executar o código na lógica do servidor, os usuários devem ter as permissões apropriadas configuradas pelo criador. O acesso é regido por funções Web e permissões de tabela, que também determinam se a lógica do servidor pode acessar tabelas específicas.
Autenticar a API lógica do servidor
Você não precisa incluir código de autenticação personalizado. A autenticação e a autorização são gerenciadas pela sessão do aplicativo. Todas as chamadas à API de lógica do servidor devem incluir um token de solicitação intersite forjada (CSRF).
Configuração de governança para chamadas de serviço externo
A lógica do servidor pode se conectar a APIs REST externas, Azure Functions e outros sistemas de negócios para executar integrações do lado do servidor. Para evitar a exfiltração de dados, os administradores de locatários podem bloquear chamadas HTTP de saída que a lógica do servidor faz site a site. Quando esse controle de governança é imposto, qualquer tentativa da lógica do servidor de fazer uma chamada HTTP de saída falha. Para saber mais, consulte a desativação de chamadas de serviço externas na lógica do servidor.
Configurações do site
Use as seguintes configurações de site opcionais para ajudar a configurar a lógica do servidor:
| Name | Description | Default |
|---|---|---|
| ServerLogic/Ativado | Habilitar/Desabilitar recurso | verdadeiro |
| ServerLogic/AllowedDomains | Restringir quais domínios externos podem ser chamados | Todos os domínios permitidos |
| ServerLogic/TimeoutInSeconds | Tempo máximo de execução (em segundos). O tempo limite pode ser aumentado para 240 segundos | 120 |
| ServerLogic/PermitirConexãoComTodosOsDomínios | Permitir rede entre domínios | Verdade |
URL da API lógica do servidor
Construa a URL da API usando este formato:
https://<site-url>/_api/serverlogics/<server-logic-name>
Exemplo:
https://contoso.powerappsportals.com/_api/serverlogics/exchangerate
Métodos HTTP com suporte
A lógica do servidor dá suporte a métodos HTTP padrão para executar operações em dados ou interagir com serviços externos. Cada método é mapeado para uma função que você define no código lógico do servidor.
| Método | Assinatura de função | Uso | Description |
|---|---|---|---|
| GET | function get() { } | Recuperar dados. | Usado para buscar dados do Dataverse, APIs externas ou lógica de negócios personalizada. Ideal para operações somente leitura em que nenhuma alteração de dados é feita. |
| POST | function post() { } | Crie registros ou envie novos dados. | Normalmente usado para inserir novos registros no Dataverse ou enviar dados para sistemas externos. Adequado para envios de formulário ou fluxos de trabalho que precisam criar ou disparar ações. |
| PÔR | function put() { } | Substitua ou atualize registros. | Atualiza ou substitui um conjunto de dados ou registro inteiro. Normalmente usado para atualizações completas ou cenários de sincronização. |
| PATCH | function patch() { } | Atualiza parte de um registro (upsert). | Executa uma atualização parcial dos dados existentes sem substituir todo o registro. Use esse método quando apenas campos específicos precisarem de modificação. |
| EXCLUIR | function del() { } | Excluir registros ou campos. | Remove registros ou dados do Dataverse ou de um sistema externo. Deve ser usado com cuidado para evitar perda de dados não intencional. |
Próxima etapa
Informações relacionadas
Objetos do servidor
Como interagir com tabelas do Dataverse usando a lógica do servidor