Udostępnij przez


DevServer z usługą Microsoft Fabric

DevServer to lokalny serwer, który uruchamiasz podczas tworzenia obciążenia Fabric. Obsługuje ona frontend (SPA) na hoście lokalnym i udostępnia niewielki zestaw punktów końcowych HTTP, które Fabric wywołuje podczas rozwoju w celu pobrania manifestów produktu i elementu. W połączeniu z DevGateway, Fabric może załadować interfejs użytkownika obciążenia roboczego w elemencie iFrame i odczytać dane manifestu bez potrzeby publikowania niczego w swojej dzierżawie.

Co robi serwer DevServer

  • Hostuje frontend obciążenia za pośrednictwem protokołu HTTP na hoście lokalnym (na przykład http://localhost:60006), aby Fabric mogło załadować ją w elemencie iFrame.
  • Obsługuje statyczne zasoby, do których odwołuje się manifest (ikony, zlokalizowane ciągi, obrazy).
  • Udostępnia lokalne punkty końcowe JSON, które Framework używa do odczytywania manifestów podczas rozwoju.
  • Umożliwia szybkie cykle edycji i odświeżania z przeładowaniem na gorąco w większości konfiguracji.

Ważne

Serwer DevServer współpracuje z usługą DevGateway. Usługa DevGateway rejestruje lokalne wystąpienie obciążenia w usłudze Fabric, aby usługa mogła komunikować się z punktami końcowymi serwera DevServer podczas opracowywania.

Gdzie sieć szkieletowa wywołuje serwer DevServer

Po włączeniu trybu programowania i uruchomieniu zarówno usługi DevGateway, jak i devServer:

  • Fabric nawigacyjnie łączy się z frontendem za pośrednictwem punktu końcowego zdefiniowanego w manifeście obciążenia (zobacz Manifest obciążenia). W środowisku deweloperskim zwykle wskazuje to adres URL hosta lokalnego uwidoczniony przez serwer DevServer.
  • Platforma Fabric wysyła zapytanie do serwera DevServer o metadane dotyczące elementów produktu, w celu renderowania nawigacji, kafelków oraz innych elementów interfejsu użytkownika dla Twoich procesów. Dzięki temu można iterować nad Product.json oraz nad manifestami elementów bez ponownego kompilowania i przekazywania pakietu.

Lokalne punkty końcowe zapewnia serwer DevServer

Dokładne trasy mogą się różnić w zależności od szablonu, ale przykładowe repozytorium uwidacznia niewielki zestaw przewidywalnych punktów końcowych:

  • GET / — zwraca aplikację internetową (sieć szkieletowa interfejsu użytkownika ładuje się do elementu iFrame).
  • GET /manifests — zwraca ładunek JSON, który agreguje manifest produktu oraz manifesty elementów używane przez interfejs użytkownika. Odwzorowuje to strukturę oczekiwaną przez Fabric w momencie publikacji (zobacz Manifest produktu i Manifest elementu).
  • GET /assets/... — obsługuje ikony, obrazy i zlokalizowane łańcuchy, do których odwołuje się manifest.

Uwaga / Notatka

  • CORS i nagłówki są wstępnie skonfigurowane w przykładowym DevServerze, dzięki czemu aplikacja może być osadzona i komunikować się z hostem.
  • Nazwy tras powyżej są zgodne z bieżącym przykładem; zapoznaj się z plikiem README szablonu, jeśli projekt używa innej ścieżki dla punktu końcowego manifestów.

Typowy przepływ programowania

  1. Uruchom serwer DevServer z przykładowego repozytorium, aby hostować fronton na hoście lokalnym.
  2. Uruchom usługę DevGateway, aby zarejestrować lokalne obciążenie w usłudze Fabric.
  3. Otwórz obszar roboczy Fabric i uruchom punkt startowy procesu obciążeniowego; Fabric ładuje aplikację w elemencie iFrame i wywołuje punkty końcowe serwera deweloperskiego, aby odczytać dane manifestu.
  4. Edytowanie plików interfejsu użytkownika lub manifestu i odświeżanie; zmiany są wprowadzane natychmiast bez ponownego pakowania.

Aby dowiedzieć się, jak uruchomić każdy proces, zobacz samouczek Wprowadzenie i przewodnik Instalacji.

Relacja do opublikowanych manifestów

W środowisku produkcyjnym manifesty obciążenia są pakowane i przekazywane w ramach pakietu NuGet obciążenia (zobacz Omówienie manifestu). Podczas programowania lokalne punkty końcowe serwera DevServer działają jako lekki stand-in dla tych spakowanych plików, dzięki czemu można iterować szybko:

  • Schemat i reguły są takie same jak w przypadku opublikowanych manifestów.
  • Serwer DevServer ma wpływ tylko na rozwój lokalny; nie wpływa na działanie publikowania.

Wskazówki dotyczące rozwiązywania problemów

  • Jeśli element iFrame wyświetli pustą stronę, upewnij się, że DevServer jest uruchomiony, a punkt końcowy frontonu w manifeście wskazuje na prawidłowy adres URL hosta lokalnego.
  • Jeśli brakuje ikon lub ciągów, sprawdź assets ścieżki oraz czy serwer DevServer obsługuje te pliki w obszarze /assets.
  • Jeśli Fabric nie może znaleźć manifestów, sprawdź, czy trasa /manifests istnieje w szablonie i zwraca prawidłowy JSON.

Zobacz także