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.
O DevServer é o servidor Web local executado durante o desenvolvimento de uma carga de trabalho do Fabric. Ele atende seu SPA no localhost e fornece um pequeno conjunto de endpoints HTTP que o Fabric chama durante o desenvolvimento para recuperar seus manifestos de Produto e Item. Quando combinado com o DevGateway, o Fabric pode carregar a interface de carga de trabalho em um iFrame e ler os dados do manifesto sem publicar nada na instância.
O que o DevServer faz
- Hospeda seu front-end de carga de trabalho por HTTP no localhost (por exemplo, http://localhost:60006) para que o Fabric possa carregá-lo em um iFrame.
- Serve ativos estáticos referenciados por seus manifestos (ícones, cadeias de caracteres localizadas, imagens).
- Expõe os endpoints JSON locais que o Fabric usa para ler seus arquivos de manifesto durante o desenvolvimento.
- Habilita ciclos rápidos de edição-atualização com recarregamento frequente na maioria das configurações.
Importante
O DevServer funciona junto com o DevGateway. O DevGateway registra sua instância de carga de trabalho local no Fabric para que o serviço possa se comunicar com os endpoints do DevServer durante o desenvolvimento.
Onde o Fabric chama o servidor DevServer
Quando você habilita o modo de desenvolvimento e inicia o DevGateway e o DevServer:
- O Fabric navega até o frontend usando o endpoint definido pelo manifesto da carga de trabalho (consulte o manifesto da carga de trabalho). No desenvolvimento, isso geralmente aponta para uma URL de localhost exposta pelo DevServer.
- O Fabric consulta o DevServer para obter metadados voltados para o produto, permitindo assim a renderização da navegação, dos blocos e de outros elementos de UX para sua carga de trabalho. Isso permite que você itere em
Product.jsone nos manifestos de item sem recompilar e carregar um pacote.
Pontos de extremidade locais que o DevServer fornece
As rotas exatas podem variar de acordo com o modelo, mas o repositório de exemplo expõe um pequeno conjunto de pontos de extremidade previsíveis:
- GET / — retorna seu aplicativo Web (o UI Fabric é carregado em um iFrame).
- GET /manifests — retorna uma carga JSON que agrega o manifesto do Produto e os manifestos dos Itens usados pelo frontend. Isso espelha a estrutura esperada pelo Fabric no momento da publicação (consulte o manifesto do produto e o manifesto do item).
- GET /assets/... — oferece ícones, imagens e strings localizadas referenciadas por seus manifestos.
Observação
- CORS e cabeçalhos são pré-configurados no DevServer de exemplo para que o aplicativo possa ser inserido e se comunicar com o host.
- Os nomes de rota acima seguem o exemplo atual; consulte o README do seu modelo se o projeto usar um caminho diferente para o endpoint dos manifests.
Fluxo de desenvolvimento típico
- Inicie o DevServer no repositório de exemplo para hospedar seu front-end no localhost.
- Inicie o DevGateway para registrar sua carga de trabalho local com o Fabric.
- Abra o workspace do Fabric e inicie o ponto de entrada da aplicação; o Fabric carrega seu aplicativo em um iFrame e chama os endpoints do DevServer para ler os dados do manifesto.
- Editar arquivos de interface do usuário ou de manifesto e atualizar; as alterações entrarão em vigor imediatamente sem reempacotar.
Para saber como iniciar cada processo, consulte o tutorial de Introdução e o guia de Instalação.
Relação com manifestos publicados
Em produção, os manifestos da carga de trabalho são empacotados e carregados como parte do pacote NuGet da carga de trabalho (consulte a visão geral do manifesto). Durante o desenvolvimento, os pontos de extremidade locais do DevServer atuam como um substituto leve para esses arquivos empacotados, permitindo que você possa iterar rapidamente.
- Esquema e regras são iguais aos dos manifestos publicados.
- O DevServer afeta apenas o desenvolvimento local; não altera o funcionamento da publicação.
Dicas de solução de problemas
- Se o iFrame mostrar uma página em branco, confirme se o servidor de desenvolvimento (DevServer) está em execução e o endpoint de frontend no seu manifesto aponta para a URL correta de localhost.
- Se ícones ou cadeias de caracteres estiverem ausentes, verifique os
assetscaminhos e se o DevServer está servindo esses arquivos em/assets. - Se o Fabric não conseguir localizar seus manifestos, verifique se a
/manifestsrota existe em seu modelo e retorna JSON válido.