Rozpocznij pracę z wtyczką Power Pages dla GitHub Copilot CLI i Claude Code

Wtyczka Power Pages dla GitHub Copilot CLI i Claude Code zapewnia wspomagany sztuczną inteligencją przepływ pracy do tworzenia, wdrażania i zarządzania nowoczesnymi witrynami jednostronicowymi aplikacjami (SPA) w usłudze Power Pages. Zamiast ręcznie utworzyć szkielet projektów, napisać standardowy kod interfejsu API i skonfigurować uprawnienia, opisz, co chcesz w języku naturalnym, a wtyczka obsługuje implementację.

Wtyczka obsługuje pełny cykl życia tworzenia witryn dzięki umiejętnościom konwersacyjnym, od tworzenia szkieletu nowej witryny do wdrażania jej, konfigurowania modeli danych usługi Dataverse i konfigurowania uwierzytelniania.

Ważna

  • Generacyjny agent kodowania sztucznej inteligencji, taki jak interfejs wiersza polecenia GitHub Copilot lub Claude Code, używa umiejętności i przepływów pracy tej wtyczki do wykonywania zadań specyficznych dla Power Pages.
  • Kod i konfiguracja wygenerowana przez agenta kodowania sztucznej inteligencji mogą być niedokładne. Przejrzyj, przetestuj i zweryfikuj całą wygenerowaną zawartość przed jego zatwierdzeniem lub wdrożeniem. Przed ich zatwierdzeniem należy zawsze przeglądać propozycje agentów .

Wymagania wstępne

Przed rozpoczęciem sprawdź, czy masz wymagane oprogramowanie i uprawnienia.

Wymagania dotyczące oprogramowania

Składnik Minimalna wersja Więcej informacji
Node.js 18.0 lub nowszy Pobieranie Node.js
Interfejs wiersza polecenia platformy Power Platform CLI (interfejs wiersza polecenia PAC) 2.6.3 lub nowsza wersja (wymagana dla logiki serwera) Zainstaluj PAC CLI
Azure CLI Latest Install Azure CLI
GitHub Copilot CLI lub Claude Code Latest GitHub Copilot CLI lub Claude Code
Rozszerzenie Visual Studio Code oraz Power Platform Tools (opcjonalne) Latest Pobierz VS Code i Zainstaluj narzędzia Power Platform

Potrzebne są również następujące elementy:

  • Środowisko Power Platform z włączoną funkcją Power Pages.
  • Uwierzytelniona sesja PAC CLI połączona ze środowiskiem docelowym. Uruchom polecenie pac auth create , jeśli jeszcze nie nawiązaliśmy połączenia.
  • Sesja interfejsu wiersza polecenia platformy Azure zalogowana do tej samej dzierżawy. Uruchom az login --allow-no-subscriptions, aby się uwierzytelnić.

Weryfikowanie uwierzytelniania:

Sprawdź, czy uwierzytelniasz się przy użyciu pac auth list polecenia .

pac auth list           # Should show authenticated profile

Jeśli nie jesteś uwierzytelniony, uruchom następujące polecenie:

pac auth create --environment <Instance url>        # Authenticate to Power Platform

Wskazówka

Aby uzyskać adres URL wystąpienia, przejdź do strony głównej usługi Power Pages, wybierz ikonę Ustawienia w prawym górnym rogu, a następnie wybierz pozycję Szczegóły sesji.

Instalowanie wtyczki

Zainstaluj wtyczkę Power Pages z witryny Marketplace. Jeśli używasz interfejsu wiersza polecenia GitHub Copilot, zapoznaj się z dokumentacją rozszerzeń interfejsu wiersza polecenia Copilot aby zapoznać się z równoważnymi krokami instalacji. Następujące polecenia używają składni Claude Code.

Uruchom instalatora, aby skonfigurować wszystkie wtyczki z włączoną funkcją autoaktualizacji:

Windows (PowerShell):

iwr https://raw.githubusercontent.com/microsoft/power-platform-skills/main/scripts/install.js -OutFile install.js; node install.js; del install.js

macOS/Linux/Windows (cmd):

curl -fsSL https://raw.githubusercontent.com/microsoft/power-platform-skills/main/scripts/install.js | node

Instalator automatycznie:

  • Instaluje pac CLI, jeśli nie jest jeszcze zainstalowany.
  • Wykrywa dostępne narzędzia, takie jak Claude Code i GitHub Copilot CLI.
  • Rejestruje witrynę Marketplace wtyczek i instaluje wszystkie wymienione wtyczki.
  • Włącza funkcję autoaktualizacji, dzięki czemu wtyczki pozostają aktualne.

Po zakończeniu instalacji uruchom ponownie program Claude Code lub interfejs wiersza polecenia GitHub Copilot, aby uzyskać dostęp do umiejętności wtyczki jako polecenia zaczynające się od znaku ukośnika w sesji twojego agenta.

Instalowanie z witryny Marketplace

  1. Otwórz program Claude Code w terminalu.

  2. Dodaj witrynę Microsoft Marketplace:

    /plugin marketplace add microsoft/power-platform-skills
    
  3. Zainstaluj wtyczkę Power Pages:

    /plugin install power-pages@power-platform-skills
    

Po zakończeniu instalacji uruchom ponownie program Claude Code lub CLI GitHub Copilot, aby uzyskać dostęp do umiejętności wtyczki jako polecenia zaczynające się od znaku ukośnika w sesji twojego agenta.

Wskazówka

Aby automatycznie otrzymywać aktualizacje w sklepie i funkcjach, włącz automatyczną aktualizację. Użyj polecenia /plugin, przejdź do Rynki, wybierz rynek i włącz automatyczne aktualizacje.

Omówienie umiejętności

Wtyczka zapewnia umiejętności, które obejmują pełny cykl życia witryny Power Pages. Wywołaj każdą umiejętność w sposób konwersacyjny, używając polecenia ukośnikowego lub opisując, co chcesz zrobić.

Kwalifikacje Komenda Do czego służy
Utwórz witrynę /create-site Tworzenie szkieletu witryny, zastosowanie kierunku projektowego oraz budowanie stron i komponentów
Wdrażanie witryny /deploy-site Kompiluje projekt i przesyła go do Power Pages przy użyciu PAC CLI
Aktywowanie witryny /activate-site Tworzy rekord strony internetowej i przypisuje publiczny adres URL
Konfigurowanie modelu danych /setup-datamodel Tworzy tabele, kolumny i relacje w usłudze Dataverse
Dodawanie przykładowych danych (opcjonalnie) /add-sample-data Wypełnia tabele Dataverse realistycznymi rekordami testowymi
Integracja webowego interfejsu API /integrate-webapi Generuje typowany kod klienta interfejsu API, usługi i uprawnienia tabeli
Dodawanie podsumowań sztucznej inteligencji /add-ai-webapi Integruje na swoich stronach interfejsy API generatywnej AI do tworzenia podsumowań (podsumowania wyszukiwania i podsumowania danych). Generuje usługę podsumowującą określonego typu z obsługą tokenów chroniących przed fałszerstwem, otokami specyficznymi dla struktury, połączonymi lokacjami wywołań oraz pasującymi ustawieniami witryny Summarization
Konfigurowanie uwierzytelniania /setup-auth Dodaje logowanie, wylogowywanie i kontrolę dostępu opartą na rolach. Obsługuje Microsoft Entra ID, Tożsamość zewnętrzna Microsoft Entra, OpenID Connect, SAML 2.0, WS-Federation, konto Microsoft, Facebook, Google oraz lokalne uwierzytelnianie nazwy użytkownika i hasła, w tym konfiguracje wielu dostawców
Tworzenie ról sieci Web /create-webroles Generuje pliki YAML roli internetowej na potrzeby zarządzania dostępem użytkownika
Dodawanie logiki serwera /add-server-logic Generuje bezpieczne serwerowe punkty końcowe JavaScript do walidacji, wywołań zewnętrznych interfejsów API, zarządzania tajemnicami i operacji na danych.
Dodawanie przepływu w chmurze /add-cloud-flow Integruje istniejące w chmurze przepływy Power Automate z Twoją platformą dla potrzeb przepływów zatwierdzania, powiadomień i zaplanowanej automatyzacji.
Integrowanie zaplecza /integrate-backend Analizuje prototyp, określa właściwe podejście (internetowy interfejs API, logikę serwera lub przepływ chmury) dla każdej funkcji i organizuje pełną sekwencję kompilacji
Dodawanie funkcji SEO /add-seo Generuje robots.txt, sitemap.xml oraz tagi meta
Uruchamianie przeglądu zabezpieczeń /security-review Organizuje ukierunkowane umiejętności zabezpieczeń i konsoliduje każde odkrycie w jednym raporcie HTML. Obejmuje kod, zależności, skan wdrożonej witryny, nagłówki HTTP przeglądarki, zaporę aplikacji internetowych, uprawnienia tabel i konfigurację uwierzytelniania
Skanowanie kodu źródłowego /scan-code Uruchamia analizę statyczną i skanowanie zależności w lokalnych plikach źródłowych; przedstawia wyniki między wzorcami kodu, lukami w zabezpieczeniach, zakodowanymi wpisami tajnymi i problemami z licencjami
Skanowanie wdrożonej witryny /scan-site Uruchamia skanowanie zabezpieczeń po stronie serwera w witrynie na żywo, pobiera najnowszy raport i grupuje wyniki według ważności
Zarządzanie nagłówkami zabezpieczeń przeglądarki /manage-headers Sprawdza i konfiguruje nagłówki zabezpieczeń HTTP wysyłane przez witrynę do przeglądarek — zasady zabezpieczeń zawartości, ochrona przed atakami dotyczącymi ramek i atakami typu „clickjacking”, udostępnianie między źródłami, zachowanie plików cookie oraz inne powiązane ustawienia witryny
Zarządzanie zaporą aplikacji internetowej /manage-firewall Sprawdza i konfiguruje zaporę aplikacji internetowej (WAF) w lokacji produkcyjnej: umożliwia ochronę, dodaje lub usuwa bloki IP, bloki kraju, bloki ścieżki i limity szybkości
Uprawnienia do inspekcji tabeli /audit-permissions Przeprowadza inspekcję istniejących uprawnień tabeli względem kodu witryny i metadanych usługi Dataverse; tworzy raport HTML pogrupowany według ważności z sugerowanymi poprawkami
Planowanie wdrożenia /plan-alm Wykrywa stan projektu, zbiera strategię wdrażania, tworzy wizualny plan i koordynuje pozostałe funkcje zarządzania cyklem życia aplikacji (ALM) we właściwej kolejności
Utwórz rozwiązanie /setup-solution Tworzy wydawcę i rozwiązanie, dodaje składniki usługi Power Pages, klasyfikuje ustawienia witryny i proponuje zmienne środowiskowe oraz wpisy tajne usługi Azure Key Vault
Konfigurowanie hosta potoku /ensure-pipelines-host Udostępnia lub wykrywa środowisko hostujące dla usługi Power Platform Pipelines
Skonfiguruj potok /setup-pipeline Rejestruje definicję potoku w usłudze Dataverse i wiąże etapy promocji ze środowiskami docelowymi
Wdrażanie za pośrednictwem potoku /deploy-pipeline Wyzwala wdrożenie potoku dla docelowego etapu z zastąpieniami zmiennych środowiskowych na etap
Środowisko wymuszonego łączenia /force-link-environment Ponownie przypisuje środowisko docelowe do nowego hosta potoków usługi Power Platform, gdy konflikt hostów blokuje wdrożenie
Eksportowanie rozwiązania /export-solution Eksportuje rozwiązanie jako zarządzany lub niezarządzany plik zip z sprawdzaniem kompletności przed eksportem
Importowanie rozwiązań /import-solution Importuje rozwiązanie w pliku ZIP do środowiska docelowego, etapowo lub bezpośrednio.
Witryna testowa /test-site Weryfikuje wdrożoną witrynę za pomocą testu opartego na przeglądarce: przeszukiwanie stron, sprawdzanie dostępu na podstawie ról i weryfikacja interfejsu Web API
Diagnozuj wdrożenie /diagnose-deployment Porównuje niepowodzenia wdrożenia z katalogiem znanych błędów i sugeruje rozwiązanie

Typowy przepływ pracy

Typowy pełny przepływ pracy jest zgodny z następującą sekwencją:

  1. /create-site: twórz podstawy, projektuj i buduj strony
  2. /deploy-site : Prześlij do środowiska Power Pages
  3. /activate-site : Konfigurowanie publicznego adresu URL
  4. /setup-datamodel : Tworzenie tabel dataverse
  5. /add-sample-data : Wypełnianie tabel rekordami testowymi
  6. /integrate-webapi : Generowanie kodu klienta interfejsu API i konfigurowanie uprawnień
  7. /create-webroles: Zdefiniuj role dostępu
  8. /setup-auth : Dodaj interfejs użytkownika do logowania, wylogowania i oparty na rolach
  9. /add-server-logic : Dodawanie bezpiecznych punktów końcowych po stronie serwera
  10. /add-cloud-flow: Integrowanie istniejących przepływów Power Automate
  11. /add-seo : Optymalizacja aparatu wyszukiwania
  12. /deploy-site: publikuj ostateczne zmiany na żywo
  13. /security-review : Uruchom kompleksową weryfikację zabezpieczeń przed przejściem do środowiska produkcyjnego
  14. /plan-alm: promowanie witryny do środowiska testowego i produkcyjnego

Wskazówka

  • Nie musisz przestrzegać tej dokładnej kolejności. Każda umiejętność sprawdza własne wymagania wstępne i informuje, czy brakuje czegoś. Na przykład, możesz uruchomić /setup-auth przed /integrate-webapi, jeśli strona wymaga uwierzytelniania najpierw.
  • Jeśli nie jesteś pewien, które podejście zastosować do każdej funkcji, uruchom /integrate-backend zamiast kroków od 4 do 10 pojedynczo. Analizuje prototyp, określa, czy każda funkcja potrzebuje internetowego interfejsu API, logiki serwera, czy przepływu w chmurze, i organizuje umiejętności w odpowiedniej kolejności.
  • Aby dodać podsumowania wyszukiwania i rekordów wygenerowane przez sztuczną inteligencję, uruchom polecenie /add-ai-webapi po ./integrate-webapi Ponownie używa uprawnień tabeli i ustawień witryny, które konfigurują element /integrate-webapi, więc tę opcję należy uruchomić po wdrożeniu integracji z internetowym interfejsem API.

Zbuduj swoją witrynę Power Pages

Ten przewodnik obejmuje pełny cykl życia tworzenia strony Power Pages za pomocą wtyczki — od przygotowania szablonu po wdrożenie. Każdy krok opisuje, co mówisz i co wtyczka robi w odpowiedzi.

Krok 1. Tworzenie witryny

Opisz witrynę w języku naturalnym: zawartość strony, której potrzebuje, oraz wszelkie preferencje projektowe, takie jak schemat kolorów, styl układu lub czcionki. Uruchom /create-site lub opisz witrynę, a wtyczka rozpoznaje intencję.

Jeśli nie określisz struktury, wtyczka poprosi Cię o wybranie jednej (React, Vue, Angular lub Astro), a następnie:

  1. Tworzy szkielet projektu z szablonu i zastosowuje nazwę witryny, kolory oraz znaczniki projektowe.
  2. Instaluje zależności, uruchamia serwer deweloperów i otwiera podgląd przeglądarki na żywo.
  3. Tworzy każdą stronę, składnik i trasę żądaną przy użyciu odpowiednich obrazów.
  4. Tworzy zatwierdzenia git przy znaczących kamieniach milowych, dzięki czemu masz wbudowaną historię cofania zmian.

Krok 2. Wdrażanie witryny

Uruchom /deploy-site, aby przesłać witrynę do Power Pages. Wtyczka:

  1. Sprawdza, czy PAC CLI jest zainstalowane, a sesja uwierzytelniania jest aktywna.
  2. Potwierdza z Tobą środowisko docelowe przed kontynuowaniem.
  3. Uruchamia kompilację produkcyjną i przekazuje skompilowane dane wyjściowe.
  4. Tworzy katalog artefaktów wdrożenia, jeśli jeszcze nie istnieje.

Note

Jeśli środowisko blokuje niektóre załączniki plików, wtyczka wykryje problem i zawiera instrukcje dotyczące jego rozwiązania.

Krok 3. Aktywowanie witryny

Uruchom polecenie /activate-site , aby udostępnić witrynę publicznie. Wtyczka:

  1. Sugeruje poddomenę na podstawie nazwy witryny i umożliwia jej dostosowanie.
  2. Udostępnia dane witryny internetowej za pośrednictwem interfejsu API Power Platform.
  3. Sondaż trwa do momentu uruchomienia strony i wyświetlenia publicznego adresu URL.

Na tym etapie masz witrynę roboczą pod publicznym adresem URL. Pozostałe kroki obejmują dodanie danych, uwierzytelniania oraz SEO. Pomiń wszystkie kroki, które nie mają zastosowania do witryny.

Krok 4. Konfigurowanie modelu danych

Uruchom polecenie /setup-datamodel , aby utworzyć tabele usługi Dataverse, których potrzebuje witryna. Jeśli masz już diagram ER lub określony schemat, podaj go bezpośrednio zamiast agenta analizować kod.

Wtyczka uruchamia agenta architekta modelu danych, który:

  1. Analizuje kod witryny, aby określić, jakich danych wymagają strony i składniki.
  2. Wysyła zapytania do środowiska Dataverse dla istniejących tabel, aby uniknąć duplikatów.
  3. Proponuje model danych z tabelami, kolumnami, typami danych i relacjami, wizualizowany jako diagram ER.

Przeglądasz i zatwierdzasz propozycję. Wtyczka nie tworzy niczego, dopóki nie potwierdzisz. Po zatwierdzeniu wtyczka tworzy tabele i kolumny za pomocą wywołań interfejsu API i zapisuje plik manifestu używany przez kroki 5 i 6.

Krok 5. Dodawanie przykładowych danych (opcjonalnie)

Uruchom polecenie /add-sample-data , aby wypełnić tabele rekordami testowymi. Ten krok wymaga modelu danych z kroku 4.

Wtyczka wykonuje następujące akcje:

  1. Odczytuje manifest, aby zrozumieć tabele, kolumny i relacje.
  2. Generuje kontekstowo odpowiednie wartości dla każdego typu kolumny, takie jak realistyczne wiadomości e-mail, wiarygodne daty i sformatowane kwoty waluty.
  3. Wstawia rekordy w kolejności zależności (tabele nadrzędne przed tabelami podrzędnymi) i odświeża tokeny uwierzytelniania automatycznie podczas wstawiania zbiorczego.

Krok 6. Integracja z internetowym interfejsem API usługi Dataverse

Uruchom polecenie /integrate-webapi , aby zastąpić pozorne dane dynamicznymi zapytaniami usługi Dataverse. Ten krok wymaga modelu danych z kroku 4.

Wtyczka wykonuje następujące akcje:

  1. Skanuje kod źródłowy w poszukiwaniu składników, które wykorzystują dane testowe, wywołania pobierania symboli zastępczych lub tablice zakodowane na stałe. Mapuje te składniki na tabele Dataverse.
  2. Uruchamia agenta interfejsu API sieci Web dla każdej tabeli, która generuje:
    • Udostępniony klient API z zarządzaniem tokenami antyfałszerskimi i logiką ponawiania prób.
    • Typy jednostek TypeScript i mapery domen.
    • Warstwa usługi CRUD.
    • Wzorce struktury, takie jak elementy hook React, komponenty Vue lub usługi Angular.
  3. Wyzwala agenta Permissions Architect, który proponuje uprawnienia tabel i ustawienia witryny.

Przeglądasz i zatwierdzasz propozycję uprawnień. Wtyczka nie tworzy żadnych plików konfiguracji do momentu potwierdzenia.

Dodawanie podsumowań generowanych przez sztuczną inteligencję (opcjonalnie)

Uruchom element /add-ai-webapi, aby dodać podsumowania generatywnej AI do integracji z internetowym interfejsem API. Umiejętność łączy dwa interfejsy API podsumowywania w wersji zapoznawczej ze stronami szczegółów rekordów i list:

  • Interfejs API podsumowania wyszukiwania: zwraca skrócone podsumowanie wyników wyszukiwania ze sztuczną inteligencją z cytatami.
  • Interfejs API podsumowania danych: zwraca podsumowanie poszczególnych rekordów lub szczegółowe informacje na poziomie listy dla tabeli Dataverse.

Ten krok opiera się na modelu danych z kroku 4 i integracji internetowego interfejsu API z kroku 6. Wtyczka wykonuje następujące akcje:

  1. Skanuje kod pod kątem punktów integracji podsumowania oraz potwierdza strony docelowe, tabele i interfejsy API do użycia.
  2. Deleguje wszelkie brakujące wymagane elementy interfejsu Web API — uprawnienia do tabel, listy kolumn i role internetowe — do /integrate-webapi i /create-webroles, dzięki czemu istnieje jedno źródło informacji o uprawnieniach.
  3. Buduje agenta integracji internetowego interfejsu API AI, który generuje silnie typizowaną usługę podsumowania (aiSummaryService.ts) z obsługą tokenów zapobiegających fałszerstwom, otokami specyficznymi dla struktury (elementy hook usługi React, komponenty usługi Vue lub usługi Angular) oraz podłączonymi lokacjami wywołań na stronach docelowych.
  4. Buduje agenta architekta ustawień internetowego interfejsu API AI, który tworzy ustawienia witryny Summarization na potrzeby poleceń i limitów treści.

Przeglądasz i zatwierdzasz propozycje. Wtyczka nie generuje kodu ani nie tworzy ustawień do momentu potwierdzenia.

Note

Interfejsy API podsumowania są dostępne w wersji zapoznawczej i wymagają włączenia administracyjnych mechanizmów kontroli oraz mechanizmów kontroli na poziomie witryny. Jeśli podsumowania nie są wyświetlane po wdrożeniu, upewnij się, że funkcja jest włączona za pomocą odpowiednich ustawień witryny i kontrolek administratora. Aby uzyskać więcej informacji, zobacz artykuły Omówienie interfejsu API podsumowywania danych i Wyszukiwanie w usłudze Power Pages z generatywną sztuczną inteligencją.

Krok 7. Tworzenie ról sieci Web

Uruchom /create-webroles, aby zdefiniować role dostępu użytkownika. Wtyczka:

  1. Przeszukuje środowisko w poszukiwaniu istniejących ról webowych, aby uniknąć duplikatów.
  2. Generuje definicje ról z unikatowymi identyfikatorami.
  3. Wymusza, że każda witryna ma co najwyżej jedną rolę anonimową i jedną uwierzytelnioną rolę.

Krok 8. Konfigurowanie uwierzytelniania

Uruchom polecenie /setup-auth , aby dodać logowanie, wylogowywanie i kontrolę dostępu opartą na rolach do witryny. Wtyczka obsługuje następujących dostawców tożsamości i można skonfigurować jednego dostawcę lub kilku w tym samym czasie.

Provider Najlepsze dla
Tożsamość zewnętrzna Microsoft Entra (zalecane w przypadku witryn przeznaczonych dla klientów) Witryny publiczne i portale klientów z rejestracją samoobsługową.
Microsoft Entra ID Wewnętrzne portale pracowników lub witryny partnerskie typu business-to-business (B2B). Usługa Power Pages automatycznie konfiguruje dzierżawcę nadrzędnego witryny, dlatego nie trzeba wprowadzać informacji o dzierżawcy.
Microsoft, Facebook, Google Logowanie społecznościowe dla klientów indywidualnych.
Uwierzytelnianie lokalne Logowanie przy użyciu nazwy użytkownika i hasła. Niezalecane i jest konfigurowane tylko wtedy, gdy jawnie zażądasz go.

Aby uzyskać więcej informacji na temat obsługiwanych dostawców, w tym protokołów i zagadnień dotyczących konfiguracji, zobacz Przegląd uwierzytelniania w Power Pages.

Wtyczka:

  1. Analizuje witrynę (przeznaczenie, strony, odbiorców) i proponuje rozsądną wartość domyślną. Na przykład wtyczka proponuje Tożsamość zewnętrzna Microsoft Entra z otwartą rejestracją w witrynie dla klientów lub Microsoft Entra ID z rejestracją wyłącznie na zaproszenie dla portalu wewnętrznego. Akceptujesz zalecenie lub wybierasz własnych dostawców.
  2. Dla każdego dostawcy przedstawiono każdy krok wymagań wstępnych w centrum administracyjnym dostawcy tożsamości, taki jak tworzenie dzierżawców, rejestrowanie aplikacji, tworzenie przepływów użytkownika oraz przechwytywanie identyfikatorów klientów i identyfikatorów URI przekierowania. Wtyczka weryfikuje każdą wartość wklejaną z powrotem do konwersacji i oblicza dokładny identyfikator URI przekierowania dla witryny, tak aby wartość wklejona do rejestracji aplikacji odpowiadała wartości zapisanej w ustawieniach witryny.
  3. Pyta, w jaki sposób dane profilu użytkownika powinny przepływać od dostawcy tożsamości do rekordu kontaktu w usłudze Dataverse (mapowanie claimów), czy synchronizować dane przy każdym logowaniu, czy tylko przy pierwszym logowaniu, oraz czy automatycznie łączyć zewnętrzne logowania z istniejącymi kontaktami na podstawie adresu e-mail.
  4. Generuje usługę uwierzytelniania, deklaracje typów, narzędzia autoryzacji opartej na rolach (hasRole, RequireAuth, RequireRole), hook utrzymujący aktywność sesji, który zapobiega niepostrzeżonemu wygasaniu sesji SPA, oraz składnik interfejsu użytkownika do logowania i wylogowywania zintegrowany z układem witryny. Dodatek plug-in korzysta ze wzorców stosowanych w całej strukturze, takich jak elementy hook usługi React, komponenty usługi Vue, usługi Angular czy składniki usługi Astro.
  5. Jeśli skonfigurowano więcej niż jednego dostawcę, generuje stronę /login renderowaną w wybranym układzie: rząd poziomy, stos pionowy, wyróżnienie główne lub układ z kartami.
  6. Zapisuje pasujące ustawienia witryny w obszarze .powerpages-site/site-settings/ dla każdego dostawcy, trybu rejestracji, mapowania oświadczeń i funkcji opcjonalnej.

Wtyczka konfiguruje również następujące funkcje opcjonalne po ich włączeniu:

  • Warunki: strona SPA /terms, którą użytkownicy muszą zaakceptować przed dokończeniem logowania, a także odpowiadające im ustawienie witryny i fragmenty treści.
  • Strona profilu użytkownika: strona /user-profile SPA, na której zalogowani użytkownicy edytują swoje informacje kontaktowe za pośrednictwem internetowego interfejsu API Power Pages.
  • Wylogowanie federacyjne: Powoduje również wylogowanie użytkownika u dostawcy tożsamości, gdy wyloguje się on z witryny, co jest przydatne w scenariuszach współdzielonych urządzeń lub środowisk regulowanych.

Wskazówka

Aby dodać drugiego dostawcę tożsamości do istniejącej witryny, uruchom ponownie polecenie /setup-auth. Wtyczka wykrywa, co zostało już skonfigurowane i oferuje dodanie nowego dostawcy bez zastępowania istniejących. Takie podejście jest przydatne w przypadku scenariuszy przyrostowych, takich jak rozpoczęcie od Tożsamość zewnętrzna Microsoft Entra i późniejsze dodanie usługi Google do logowania społecznościowego.

Note

Autoryzacja po stronie klienta (RequireAuth, RequireRole, hasRole) jest tylko dla środowiska użytkownika. Kontroluje to, co widzi użytkownik. Uprawnienia tabel po stronie serwera skonfigurowane przez /integrate-webapi zapewniają rzeczywiste bezpieczeństwo.

Krok 9. Dodawanie logiki serwera

Uruchom /add-server-logic, aby dodać bezpieczne serwerowe punkty końcowe do strony. Użyj Logiki Serwera, gdy witryna wymaga logiki, która nie może działać w przeglądarce, takich jak zewnętrzne wywołania interfejsu API, walidacja po stronie serwera, zarządzanie sekretami lub operacje na danych między jednostkami.

Ważna

Obsługa logiki serwera wymaga interfejsu wiersza polecenia PAC w wersji 2.6.3 lub nowszej. Użyj skryptu szybkiej instalacji , aby zaktualizować do najnowszej wersji.

Opisz potrzebne elementy w języku prostym i wtyczkę:

  1. Tworzy agenta architekta logiki serwera , który analizuje przypadek użycia i klasyfikuje jego złożoność.
  2. Proponuje projektowanie punktu końcowego, konfiguracji zabezpieczeń i wszelkie wymagane uprawnienia tabeli do przeglądu.
  3. Po zatwierdzeniu wygeneruje punkt końcowy języka JavaScript po stronie serwera pod adresem /_api/serverlogics/<name>.
  4. Tworzy usługę określonego typu po stronie klienta w celu wywołania punktu końcowego ze składników.
  5. Aktualizuje składniki w celu wywołania nowej usługi.
  6. Konfiguruje przypisania ról internetowych i uprawnienia tabeli dla punktu końcowego.

Przeglądasz i zatwierdzasz propozycję. Do momentu potwierdzenia nie zostanie wygenerowany żaden kod.

Typowe przypadki użycia:

  • Nawiązywanie połączenia z usługami zewnętrznymi. Wywołaj interfejsy API REST, Azure Functions lub usługi innych firm bez ujawniania poświadczeń. (Samouczek: interakcja z usługami zewnętrznymi)
  • Wykonywanie bezpiecznych operacji na danych. Wykonywanie zapytań, aktualizowanie lub usuwanie rekordów usługi Dataverse z spójną weryfikacją po stronie serwera. (Samouczek: interakcja z tabelami usługi Dataverse)
  • Uruchom logikę niestandardową. Agregowanie danych w różnych tabelach, wymuszanie reguł biznesowych lub obliczanie wartości pochodnych przed zwróceniem wyników do klienta.
  • Zarządzaj sekretami po stronie serwera. Przechowuj poświadczenia i klucze interfejsu API na serwerze, nigdy w kodzie klienta. (Tutorial: interakcja z Microsoft Graph i SharePoint)

Note

Uruchom /add-server-logic raz na przypadek użycia. Jeśli na przykład witryna wymaga zarówno punktu końcowego weryfikacji spisu, jak i globalnego punktu końcowego wyszukiwania, uruchom tę umiejętność dwa razy.

Krok 10. Integrowanie przepływów w chmurze

Uruchom /add-cloud-flow, aby zintegrować istniejące przepływy w chmurze Power Automate z witryną. Ta umiejętność łączy witrynę Power Pages z przepływami utworzonymi już w Power Automate. Nie tworzy nowych przepływów w chmurze.

Wtyczka:

  1. Rejestruje istniejący flow chmurowy w twojej witrynie.
  2. Generuje kod po stronie klienta, aby uruchomić przepływ z waszych stron.
  3. Obsługuje asynchroniczny stan przepływu pracy i wzorce wywołania zwrotnego.
  4. Uruchamia wymianę danych między stroną a przepływem.

Użyj /add-cloud-flow do przepływów zatwierdzania, powiadomień e-mail, zaplanowanych zadań oraz automatyzacji opartej na zdarzeniach, które lepiej obsługuje Power Automate niż punkty końcowe po stronie serwera.

Alternatywa: użyj /integrate-backend, aby zaplanować pełną warstwę usługi

Jeśli nie masz pewności, które funkcje wymagają internetowego interfejsu API, logiki serwera lub przepływu chmury, uruchom /integrate-backend zamiast ręcznie uruchomić kroki od 4 do 10. Ta umiejętność działa jako orkiestrator, który:

  1. Analizuje prototyp, aby zidentyfikować wszystkie funkcje, które wymagają warstwy usługi.
  2. Klasyfikuje każdą funkcję do odpowiedniego podejścia: internetowy interfejs API dla standardowego procesu CRUD, logika serwera na potrzeby weryfikacji po stronie serwera i zewnętrznych interfejsów API lub przepływ w chmurze na potrzeby przepływów pracy i automatyzacji zatwierdzania.
  3. Proponuje sekwencjonowany plan wykonywania ze wszystkimi umiejętnościami, zależnościami i konfiguracjami.
  4. Po zatwierdzeniu organizuje umiejętności w odpowiedniej kolejności.

Plan jest trwały, wznawiany i edytowalny. Zatrzymaj się po dowolnym kroku, aby przejrzeć wygenerowany kod lub przetestować witrynę. Wróć do miejsca, w którym skończyłeś, uruchamiając ponownie /integrate-backend.

Krok 11. Dodawanie funkcji SEO

Uruchom polecenie /add-seo , aby zoptymalizować witrynę pod kątem wyszukiwarek. Wtyczka:

  1. Odkrywa trasy na podstawie konfiguracji routera struktury.
  2. Generuje dyrektywy wyszukiwarki i mapę witryny dla wszystkich odnalezionych tras.
  3. Dodaje tagi meta: viewport, charset, description, Open Graph, Twitter Card i favicon references.

Krok 12. Wdrażanie końcowej witryny

Jeśli wykonasz jakiekolwiek opcjonalne kroki, uruchom /deploy-site ponownie, aby wypchnąć zmiany na żywo. Wtyczka uruchamia kompilację produkcyjną i przekazuje witrynę wraz ze wszystkimi artefaktami wdrażania (uprawnieniami tabeli, ustawieniami witryny, rolami internetowymi, plikami logiki serwera) do środowiska Power Pages.

Krok 13. Uruchamianie przeglądu zabezpieczeń

Uruchom polecenie /security-review , aby przeprowadzić kompleksową weryfikację zabezpieczeń witryny przed przejściem do środowiska produkcyjnego. Funkcja koordynuje wyspecjalizowane funkcje zabezpieczeń i konsoliduje wszystkie ustalenia w jednym raporcie HTML pod adresem docs/security-review-<timestamp>.html.

Wtyczka zadaje jedno pytanie w postaci zwykłego języka o twoim celu i wybiera pasujący zestaw ukierunkowanych umiejętności:

Goal Co sprawdza
Kod i konfiguracja Kod źródłowy, zależności, uprawnienia tabeli i konfiguracja uwierzytelniania. Działa tylko na plikach lokalnych — wdrożenie nie jest wymagane.
Gotowość do wydania (zalecane) Pełna recenzja przed opublikowaniem. Uruchamia wszystkie ukierunkowane umiejętności: kod i zależności, skan wdrożonej witryny, nagłówki zabezpieczeń przeglądarki, zaporę aplikacji internetowej, uprawnienia do tabel i uwierzytelnianie.
Wdrożona witryna Tylko skanowanie wdrożonej witryny na żywo. Przydatne do ciągłego monitorowania opublikowanej witryny.

Po potwierdzeniu wtyczka równolegle uruchamia pasujące wyspecjalizowane umiejętności i zapisuje ich wyniki w jednym raporcie:

  • /scan-code: uruchamia analizę statyczną (opengrep) i skanowanie zależności (trivy) lokalnych plików źródłowych. Wykrywa wzorce w kodzie, pakiety zawierające luki w zabezpieczeniach, jawnie osadzone wpisy tajne i problemy z licencjami. Jeśli któreś z narzędzi nie jest zainstalowane, ta funkcja oferuje ręczny przegląd kodu jako rozwiązanie awaryjne.
  • /scan-site: Uruchamia skanowanie bezpieczeństwa po stronie serwera dla działającej witryny i pobiera najnowszy raport. Czas trwania skanowania zależy od rozmiaru witryny — małe witryny kończą się w minutach, duże witryny mogą potrwać kilka godzin. Wyniki są pogrupowane według ważności. Wymaga wdrożonej witryny.
  • /manage-headers: sprawdza nagłówki zabezpieczeń HTTP skonfigurowane w obszarze .powerpages-site/site-settings/: Zasady zabezpieczeń zawartości, opcje X-Frame-Options, CORS, cookie SameSite i powiązane ustawienia. Identyfikuje brakujące lub słabe wartości i proponuje zalecane wartości domyślne.
  • /manage-firewall: sprawdza zaporę aplikacji internetowej (WAF) dla witryny produkcyjnej, w tym stan reguły zarządzanej i reguły niestandardowe (bloki adresów IP, bloki kraju, bloki ścieżki, limity szybkości). Dostępne tylko w środowiskach produkcyjnych w obsługiwanych regionach; funkcja wykrywa i zgłasza problemy z kwalifikowalnością.
  • /audit-permissions: Sprawdza istniejące uprawnienia do tabeli na podstawie kodu witryny i metadanych usługi Dataverse. Przedstawia brakujące uprawnienia, nadmiernie permisywne role, nieużywane uprawnienia i problemy ze schematem YAML.

Skonsolidowane wyniki grup raportów według sekcji, otwiera się w domyślnej przeglądarce i zawiera wskazówki dotyczące korygowania w języku prostym. Na czacie dodatek plug-in oferuje następnie wskazówki dotyczące poprawek — wybierasz wniosek, a dodatek plug-in interaktywnie wywołuje pasujące umiejętności ukierunkowane, aby zastosować zmianę.

Note

Przegląd zabezpieczeń nigdy nie stosuje zmian automatycznie. Każda ukierunkowana umiejętność jest uruchamiana w trybie przeglądu tylko do odczytu podczas skonsolidowanego przebiegu. Aby zastosować poprawkę, wtyczka wywołuje pasujące umiejętności interaktywnie po wybraniu akcji.

Wskazówka

Możesz również uruchomić dowolną wyspecjalizowaną funkcję oddzielnie:

  • Uruchom polecenie /scan-code podczas programowania, aby wcześnie przechwycić problemy na poziomie kodu.
  • Uruchom polecenie /manage-headers , aby naprawić określony błąd zasad zabezpieczeń zawartości lub skonfigurować mechanizm CORS.
  • Uruchom polecenie , /manage-firewall aby dodać limit szybkości na stronie logowania lub zablokować ruch według kraju.
  • Uruchom polecenie /audit-permissions po zmianie uprawnień tabeli, aby sprawdzić, czy nadal są zgodne z kodem witryny.
  • Uruchom ponownie element /security-review z celem Wdrożona witryna, aby monitorować witrynę produkcyjną w miarę upływu czasu.

Weryfikowanie witryny

Po ukończeniu tych umiejętności sprawdź, czy witryna Power Pages działa poprawnie.

  1. Przejdź do Power Pages.
  2. Znajdź witrynę na liście Aktywne witryny .
  3. Wyświetl podgląd witryny na komputerze stacjonarnym przy użyciu funkcji Podgląd.
  4. Przetestuj funkcję.

Promuj witrynę między środowiskami

Gdy witryna działa w środowisku deweloperskim, użyj umiejętności zarządzania cyklem życia aplikacji (ALM), aby promować ją w środowiskach testowych i produkcyjnych. Wtyczka pakuje witrynę jako rozwiązanie platformy Power Platform, identyfikuje wartości, które różnią się w różnych środowiskach, i wdraża rozwiązanie za pośrednictwem potoków platformy Power Platform lub za pośrednictwem ręcznego eksportu i importu.

Aby korzystać z umiejętności ALM, potrzebujesz również co najmniej jednego docelowego środowiska platformy Power Platform (test, produkcja lub oba). Aby użyć opcjonalnego przepływu usługi Azure Key Vault na potrzeby wpisów tajnych, musisz również mieć uprawnienia do tworzenia magazynu kluczy w swojej subskrypcji platformy Azure.

Zaplanuj wdrożenie

Uruchom polecenie /plan-alm, aby rozpocząć. /plan-alm jest punktem wejścia dla ALM i koordynuje inne funkcje ALM, dlatego zazwyczaj nie uruchamia się ich bezpośrednio. Wtyczka:

  1. Wykrywa bieżący stan projektu, rozwiązania i środowisk docelowych.
  2. Pyta o strategię promowania (Power Platform Pipelines lub ręczny eksport i import), etapy docelowe oraz wszelkie ograniczenia, które należy zastosować.
  3. Generuje plan wizualny w docs/alm-plan.html, który pokazuje każde działanie, jakie zamierza wykonać.
  4. Czeka na zatwierdzenie przed uruchomieniem jakiejkolwiek umiejętności podrzędnej.

Plan jest utrwalany na dysku, więc każda umiejętność podrzędna odczytuje dane z i zapisuje w tym samym utrwalonym planie. Jeśli faza się nie powiedzie, uruchom ponownie /plan-alm, a proces zostanie wznowiony od miejsca, w którym został przerwany.

Utwórz rozwiązanie

Uruchom polecenie /setup-solution , aby spakować witrynę jako rozwiązanie platformy Power Platform. Wtyczka:

  1. Tworzy wydawcę i rozwiązanie, a następnie dodaje składniki Power Pages: witrynę, role internetowe, punkty końcowe logiki serwera, rejestracje przepływów w chmurze i ustawienia dostawcy OAuth.
  2. Klasyfikuje każde ustawienie witryny pod względem wrażliwości i proponuje zmienne środowiskowe dla wartości, które różnią się między środowiskami.
  3. Oferuje aprowizację magazynu kluczy Azure Key Vault i przechowywanie w nim poświadczeń, takich jak parametry połączeń i klucze interfejsu API.
  4. Działa w trybie synchronizacji, gdy rozwiązanie już istnieje dla witryny, aby uzgodnić składniki bez tworzenia nowego rozwiązania.

Przeglądasz i zatwierdzasz propozycję. Wtyczka nie tworzy żadnej konfiguracji do momentu potwierdzenia.

Wskazówka

Jeśli rozwiązanie jest zbyt duże lub zbyt złożone, aby można je było niezawodnie wdrożyć, wtyczka zaleca jego podział i wskazuje, gdzie je podzielić. Potwierdź podział przed zastosowaniem zmian.

Wdróż za pomocą Power Platform Pipelines

Jeśli jako strategię promowania wybrano Power Platform Pipelines, wtyczka uruchamia następujące funkcje:

  1. /ensure-pipelines-host aprowizuje lub wykrywa środowisko hosta dla potoków usługi Power Platform. Umiejętność wybiera najtańszą dostępną dla dzierżawcy opcję: bezpłatny host platformy, aplikację potoków w istniejącym środowisku lub host niestandardowy.
  2. /setup-pipeline rejestruje definicję potoku w usłudze Dataverse, konfiguruje wybrane przez Ciebie etapy i powiązuje każdy etap ze środowiskiem docelowym.
  3. /deploy-pipeline wyzwala wdrożenie dla danego etapu, stosuje specyficzne dla etapu przesłonięcia zmiennych środowiskowych za pomocą deploymentSettings.json i śledzi stan w rejestrze wdrożeń.

Jeśli wdrożenie nie powiedzie się, ponieważ środowisko docelowe jest już połączone z innym hostem usługi Power Platform Pipelines, wtyczka może uruchomić /force-link-environment, aby ponownie przypisać to środowisko. Akcja wymaga wyraźnej zgody i jest odwracalna.

Wdrażanie przy użyciu ręcznego eksportowania i importowania

Jeśli wybierzesz ścieżkę ręczną, wtyczka zostanie uruchomiona:

  1. /export-solution w celu wyeksportowania rozwiązania jako zarządzanego lub niezarządzanego pliku ZIP z sprawdzaniem kompletności przed eksportem.
  2. /import-solution na potrzeby importowania pliku ZIP w środowisku docelowym — etapowo, aby najpierw zweryfikować zależności, lub bezpośrednio.

Aktywowanie i weryfikowanie wdrożonej lokacji

Po pomyślnym wdrożeniu w środowisku docelowym wtyczka:

  1. Uruchamia polecenie /activate-site, aby udostępnić publiczny URL w środowisku docelowym.
  2. Uruchamia polecenie /test-site w celu zweryfikowania wdrożenia. Wtyczka używa przeglądarki do przeszukiwania reprezentatywnych stron, uruchamiania kontroli dostępu opartego na rolach, weryfikowania /_api/ wywołań i przechwytywania kształtów odpowiedzi z /_api/serverlogics/ punktów końcowych. Umiejętność zgłasza wynik jako PASS, WARNINGS lub FAIL z połączonymi szczegółami na kontrolę z planu.

Jeśli krok zakończy się niepowodzeniem, wtyczka wykona /diagnose-deployment. Umiejętność dopasowuje niepowodzenie do katalogu znanych błędów wdrażania, takich jak nieaktualny manifest, brakujące zależności, konflikty hosta, zablokowany kod JavaScript lub wygaśnięte dane uwierzytelniające, i proponuje konkretne rozwiązanie. Wtyczka nigdy nie stosuje poprawki bez zgody użytkownika.

Note

Każda umiejętność ALM odczytuje dane z artefaktów na dysku i zapisuje je na dysku: manifest rozwiązania, dane planu, rejestr potoku, księga wdrożenia i wyniki testów. Orkiestrację można wznowić i poddać audytowi. Aby zobaczyć, co się stało w dowolnym kroku, sprawdź artefakty.

Porady i najlepsze rozwiązania

Poniższe porady ułatwiają maksymalne wykorzystanie wtyczki i agenta AI do kodowania podczas tworzenia witryn Power Pages.

Monitoruj wyniki terminala pod kątem brakujących narzędzi podczas pierwszego uruchomienia

Wtyczka zapewnia umiejętności i przepływy pracy, ale agent kodujący wspomagany sztuczną inteligencją — GitHub Copilot CLI lub Claude Code — wykonuje rzeczywiste polecenia na Twojej maszynie. Gdy używasz tych narzędzi po raz pierwszy, uważnie obserwuj dane wyjściowe terminalu. Agent kodowania sztucznej inteligencji uruchamia polecenia i skrypty w tle, a niektóre z tych poleceń zależą od narzędzi, które mogą nie być zainstalowane na maszynie. Jeśli krok zakończy się niepowodzeniem, dane wyjściowe terminalu zwykle pokazują, które narzędzie lub polecenie nie może odnaleźć.

Jeśli zostanie wyświetlony błąd podobny do command not found lub is not recognized, zainstaluj brakujące narzędzie i ponownie uruchom przepływ pracy. Agent kodowania sztucznej inteligencji kontynuuje pracę od miejsca, w którym została przerwana, gdy narzędzie jest dostępne.

Przegląd propozycji agentów przed zatwierdzeniem

Agent kodowania sztucznej inteligencji przedstawia propozycje, takie jak te z architekta modelu danych i architekta uprawnień przed wprowadzeniem zmian. Kod i konfiguracja wygenerowana przez agenta kodowania sztucznej inteligencji mogą być niedokładne, więc przejrzyj, przetestuj i zweryfikuj każdą propozycję oraz cały wygenerowany kod przed jego zatwierdzeniem lub wdrożeniem.

  • Propozycje modelu danych: sprawdź, czy nazwy tabel, typy kolumn i relacje są zgodne z wymaganiami biznesowymi. Łatwiej jest dostosować propozycję niż zmienić nazwę kolumn po wstawieniu danych.
  • Propozycje uprawnień: Sprawdź, czy każda rola ma prawidłowy poziom dostępu (tworzenie, odczytywanie, aktualizowanie, usuwanie) dla każdej tabeli. Nadmiernie permissywne uprawnienia tabeli są typowym zagrożeniem bezpieczeństwa.
  • Wygenerowany kod: odczytaj wygenerowany kod i przetestuj lokację lokalnie przed wdrożeniem. Kod generowany przez sztuczną inteligencję może zawierać błędy lub problemy z zabezpieczeniami.

Wklej błędy bezpośrednio z ich kontekstem

Jeśli coś zakończy się niepowodzeniem, niezależnie od tego, czy jest to błąd kompilacji, błąd wdrożenia, czy wyjątek środowiska uruchomieniowego w przeglądarce, skopiuj pełne dane wyjściowe błędu. Wklej go wraz z krótkim opisem tego, co robisz. Tym więcej kontekstu podajesz, tym szybciej poprawka.

Przykład: błąd kompilacji

I ran npm run build and got this error. Fix it.

error TS2339: Property 'jobTitle' does not exist on type 'JobPosting'.

  src/components/JobCard.tsx:24:31
    24   <Text>{posting.jobTitle}</Text>
                                 

Wskazówka

Uwzględnij nazwę pliku, uruchomione polecenie i oczekiwane zdarzenia. Wtyczka używa tego kontekstu do zlokalizowania problemu i zastosowania docelowej poprawki, a nie zgadywania.

Udostępnianie błędów interfejsu API z pełnym adresem URL żądania

Typowym problemem po wdrożeniu jest błąd 403 z interfejsu API Power Pages, gdy kolumna nie jest włączona dla dostępu do API. Po wystąpieniu tego błędu wklej pełny adres URL interfejsu API i pełną odpowiedź na błąd JSON. Komunikat o błędzie informuje o tym, która tabela i kolumna muszą zostać naprawione, a wtyczka może zaktualizować uprawnienia tabeli YAML i ustawienia witryny.

Przykład: Kolumna nie jest włączona dla Web API (403)

I'm getting a 403 error when the documents page loads. Here's the API call and the response. Fix the issue so this API works.

URL:
https://my-site.powerappsportals.com/_api/crd50_documents?$select=crd50_documentid,crd50_name,crd50_documentcategory,crd50_filetype,crd50_filesize,crd50_updateddate,crd50_description,_crd50_propertyid_value

Response:
{
  "error": {
    "code": "90040101",
    "message": "Attribute _crd50_propertyid_value in table crd50_document is not enabled for Web Api.",
    "innererror": {
      "code": "90040101",
      "message": "Attribute _crd50_propertyid_value in table crd50_document is not enabled for Web Api.",
      "type": "AttributePermissionIsMissing"
    }
  }
}

Ten błąd (AttributePermissionIsMissing) oznacza, że kolumna wyszukiwania _crd50_propertyid_value istnieje w tabeli Dataverse, ale nie jest wymieniona w konfiguracji uprawnień tabeli dla interfejsu Web API. Wtyczka rozwiązuje ten błąd, dodając brakującą kolumnę do pliku YAML z uprawnieniami tabeli w .powerpages-site/table-permissions/ i ponownie ją wdrażając.

Note

Publiczny interfejs API Power Pages wymaga, aby każda kolumna, która jest zwracana przez wywołanie API, została jawnie wymieniona w uprawnieniach tabeli. Właściwości wyszukiwania (z prefiksem _ i sufiksem _value) można łatwo przeoczyć, ponieważ ich nazwa interfejsu API różni się od nazwy logicznej kolumny w Dataverse. Gdy zobaczysz AttributePermissionIsMissing, zawsze dodaj tę kolumnę do uprawnień tabeli. Nie zmieniaj zapytania interfejsu API.

Bądź dokładny w tym, czego chcesz

Niejasne żądania generują niejasne wyniki. Poinformuj wtyczkę dokładnie o tym, czego potrzebujesz, łącznie z preferencjami układu, polami danych i zachowaniem.

Zamiast Spróbuj
Stwórz stronę dla ofert pracy „Utwórz stronę z ofertami pracy z paskiem wyszukiwania u góry, filtrami lokalizacji i działu oraz siatką kart pokazującą tytuł, firmę, przedział wynagrodzenia i datę publikacji każdej oferty pracy”
"Napraw styl" Karty zadań układają się pionowo na pulpicie. Umożliwia wyświetlanie ich w trójkolumnowej siatce z odstępem 16 pikseli na ekranach szerszych niż 768 pikseli"
"Dodaj dane" "Dodaj 20 przykładowych ofert pracy w czterech działach (Engineering, Marketing, Sales, HR) z realistycznymi tytułami, zakresami wynagrodzeń między $60k-$180k, a datami opublikowanymi w ciągu ostatnich 30 dni"
"Konfigurowanie interfejsu API" "Połącz składnik JobListings z tabelą cr_jobposting Dataverse. Zastąp zakodowaną na stałe tablicę prawdziwym wywołaniem API, które pobiera tytuł, dział, wynagrodzenie i datę publikacji”
Dodaj login „Skonfiguruj logowanie do usługi Tożsamość zewnętrzna Microsoft Entra z otwartą rejestracją oraz Google jako drugiego dostawcę. Pokaż je jako wiersz poziomy na stronie logowania.

Używanie zrzutów ekranu w przypadku problemów wizualnych

Gdy witryna nie wygląda prawidłowo w przeglądarce, wykonaj zrzut ekranu i wklej ją bezpośrednio do konwersacji lub podaj ścieżkę pliku. Kontekst wizualny ułatwia identyfikowanie problemów z układem, odstępami i stylami, które trudno opisać w tekście.

The header overlaps the hero section on mobile. Here's a screenshot:

[paste screenshot or provide path to screenshot file]

Fix the header so it doesn't overlap. It should be a fixed header with the content starting below it.

Iterowanie w małych krokach

Zamiast opisywać całą witrynę w jednym monicie, kompiluj przyrostowo. Zacznij od struktury i układu, a następnie dodaj funkcje pojedynczo. Takie podejście daje możliwość przejrzenia i korygowania kursu na każdym etapie.

Step 1: /create-site → Get the basic scaffold and layout right
Step 2: "Add a hero section to the home page with a search bar"
Step 3: "Add a job listings page with filter and sort"
Step 4: "Add a job detail page that shows full description"
Step 5: /setup-datamodel → Create tables now that you know the data shape
Step 6: /integrate-webapi → Wire up real data

Wskazówka

Po każdym kroku sprawdź podgląd przeglądarki. Jeśli coś nie jest w porządku, napraw to przed przejściem. Łatwiej jest rozwiązać problemy w jednym składniku niż rozwiązywać problemy na całej stronie.

Poproś o wyjaśnienie przed zatwierdzeniem

Jeśli nie masz pewności co do proponowanej zmiany, zwłaszcza w przypadku uprawnień, modyfikacji modelu danych lub konfiguracji uwierzytelniania, poproś wtyczkę o wyjaśnienie, co planuje zrobić i dlaczego przed zatwierdzeniem.

Before you create the table permissions, explain what access each role will have and why. I want to understand the security implications.

Niezależne uruchamianie umiejętności w celu odzyskania sprawności po problemach

Jeśli umiejętność kończy się niepowodzeniem, nie musisz zaczynać od nowa. Każda umiejętność działa niezależnie i może kontynuować od miejsca, w którym została przerwana. Na przykład, jeśli /integrate-webapi nie powiedzie się w trzeciej tabeli, możesz uruchomić go ponownie, a wykryje on już wykonaną pracę.

/integrate-webapi failed while processing the cr_applications table. Here's the error: [paste error]. Resume the integration from where it stopped.