Бележка
Достъпът до тази страница изисква удостоверяване. Можете да опитате да влезете или да промените директориите.
Достъпът до тази страница изисква удостоверяване. Можете да опитате да промените директориите.
Плъгинът Power Pages за GitHub Copilot CLI и Claude Code предоставя AI-подпомаган работен процес за създаване, внедряване и управление на съвременни едностранични приложения (SPA) сайтове на Power Pages. Вместо ръчно да създавате проекти, да пишете стандартен API код и да конфигурирате разрешения, опишете какво искате на естествен език, а плъгинът се занимава с реализацията.
Плъгинът поддържа целия жизнен цикъл на разработка на сайта чрез разговорни умения – от изграждане на нов сайт до неговото внедряване, настройване на Dataverse модели на данни и конфигуриране на удостоверяване.
Важно
- Генеративен AI кодиращ агент, като GitHub Copilot CLI или Claude Code, използва уменията и работните процеси на този плъгин, за да изпълнява задачи, специфични за Power Pages.
- Кодът и конфигурацията, генерирани от AI кодиращия агент, могат да бъдат неточни. Прегледайте, тествайте и валидирайте цялото генерирано съдържание, преди да го одобрите или разположите. Винаги преглеждайте предложенията на агентите преди да ги одобрите .
Предварителни изисквания
Преди да започнете, уверете се, че имате необходимия софтуер и разрешения.
Софтуерни изисквания
| Компонент | Минимална версия | Допълнителна информация |
|---|---|---|
| Node.js | 18.0 или по-късно | Изтеглете Node.js |
| Power Platform CLI (PAC CLI) | 2.6.3 или по-нова версия (задължително за логиката на сървъра) | Инсталиране на PAC CLI |
| Azure CLI | Последни новини | Инсталирай Azure CLI |
| GitHub Copilot CLI или Claude код | Последни новини | GitHub Copilot CLI или Клод код |
| Visual Studio Code и разширение за Power Platform Tools (по желание) | Последни новини | Изтеглете VS код и инсталирайте Power Platform Tools |
Също така ви трябва:
- Power Platform среда с активиран Power Pages.
- Автентифицирана PAC CLI сесия, свързана с целевата среда. Бягай
pac auth create, ако още не си се свързал. - Сесия на Azure CLI, влезена в същия tenant. Пуснете
az login --allow-no-subscriptionsза автентикация.
Проверете автентикацията:
Потвърдете, че сте автентикирани чрез командата pac auth list .
pac auth list # Should show authenticated profile
Ако не сте удостоверени, изпълнете тази команда:
pac auth create --environment <Instance url> # Authenticate to Power Platform
Съвет
За да получите URL адреса на инстанцията, отидете в Power Pages home, изберете иконата Settings в горния десен ъгъл и след това изберете Session details.
Инсталирай плъгина
Инсталирай плъгина Power Pages от marketplace. Ако използвате GitHub Copilot CLI, вижте документацията Copilot CLI разширения за еквивалентни стъпки на инсталация. Следващите команди използват синтаксиса на Claude Code.
Бърза инсталация (препоръчително)
Стартирай инсталатора, за да настроиш всички плъгини с включена автоматична актуализация:
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
Инсталаторът автоматично прави:
- Инсталира
pacCLI, ако не е вече инсталиран. - Открива налични инструменти като Claude Code и GitHub Copilot CLI.
- Регистрира пазара на плъгини и инсталира всички изброени плъгини.
- Активира автоматично обновяване, за да останат плъгините актуални.
След инсталацията, рестартирай Claude Code или GitHub Copilot CLI, за да достъпиш уменията на плъгина като slash команди в сесията на агента.
Инсталирайте от marketplace
Отвори Claude Code в терминала си.
Добавете Microsoft Marketplace:
/plugin marketplace add microsoft/power-platform-skillsИнсталирайте плъгина Power Pages:
/plugin install power-pages@power-platform-skills
След като инсталираш плъгина, рестартирай Claude Code или GitHub Copilot CLI, за да достъпиш уменията на плъгина като slash команди в сесията на агента.
Съвет
За да получавате автоматично актуализации на пазара и уменията, включете автоматичното обновление. Използвайте /plugin командата, отидете в Marketplaces, изберете пазара и включете автоматичното обновление.
Преглед на уменията
Плъгинът предоставя умения, които покриват целия жизнен цикъл на Power Pages сайт. Извикай всяко умение разговорно, било като slash команда, или като опишеш какво искаш to do.
| Умение | Command | Какво прави |
|---|---|---|
| Създайте сайт | /create-site |
Изгражда скелето на сайта, прилага вашата насока за дизайн и изгражда страници и компоненти |
| Място за разгръщане | /deploy-site |
Изгражда проекта и го качва в Power Pages, използвайки PAC CLI |
| Активирай сайта | /activate-site |
Осигурява запис на уебсайта и присвоява публичен URL адрес |
| Настройка на модел на данни | /setup-datamodel |
Създава таблици, колони и връзки в Dataverse |
| Добавете примерни данни (по желание) | /add-sample-data |
Попълва таблиците на Dataverse с реалистични тестови записи |
| Интегриране на уеб API | /integrate-webapi |
Генерира типизиран API клиентски код, услуги и права за таблици |
| Добавете обобщения на AI | /add-ai-webapi |
Интегрира генеративните AI обобщаващи API (обобщение на търсене и обобщение на данни) във вашите страници. Генерира типизирана обобщаваща услуга с обработка на токени срещу фалшифициране, специфични за фреймуърк обвивки, жични обаждания и съответстващи Summarization настройки на сайта |
| Настройване на удостоверяване | /setup-auth |
Добавя вход, излизане и контрол на достъпа, базиран на роли. Поддържа Microsoft Entra ID, Външен ИД на Microsoft Entra, OpenID Connect, SAML 2.0, WS-Federation, Акаунт в Microsoft, Facebook, Google, както и локална автентикация с потребителски имена и пароли, включително конфигурации с множество доставчици |
| Създаване на уеб роли | /create-webroles |
Генерира уеб роли YAML файлове за управление на user access |
| Добави логика на сървъра | /add-server-logic |
Генерира сигурни сървърни JavaScript крайни точки за валидиране, външни API извиквания, управление на тайни и операции с данни |
| Добавете поток в облака | /add-cloud-flow |
Интегрира съществуващите облачни потоци на Power Automate във вашия сайт за потоци за одобрение, известия и планирана автоматизация |
| Интегриране на бекенд | /integrate-backend |
Анализира вашия прототип, определя правилния подход (уеб API, Server Logic или cloud flow) за всяка функция и оркестрира цялата последователност на изграждане |
| Добавете SEO | /add-seo |
Генерира robots.txt, sitemap.xmlи мета тагове |
| Проведи проверка на сигурността | /security-review |
Оркестрира фокусираните умения за сигурност и консолидира всяко откритие в единен HTML доклад. Обхваща код, зависимости, сканиране на разгръщен сайт, хедъри на браузъра, защитна стена на уеб приложения, права за таблици и конфигурация на удостоверяване |
| Сканирайте изходния код | /scan-code |
Изпълнява статичен анализ и сканиране на зависимости върху локални изходни файлове; Показва открития в кодови шаблони, уязвими пакети, твърдо кодирани тайни и лицензи |
| Сканирайте разположен обект | /scan-site |
Започва сървърно сканиране за сигурност на живия сайт, получава най-новия доклад и групира резултатите по тежест |
| Управление на защитните заглавия на браузъра | /manage-headers |
Инспектира и конфигурира HTTP заглавни заглавни заглавия, които сайтът изпраща към браузърите — Политика за сигурност на съдържанието, защита от кадри и кликджакване, споделяне между произходи, поведение на бисквитки и свързани настройки на сайта |
| Управление на защитната стена за уеб приложения | /manage-firewall |
Инспектира и конфигурира защитната стена на уеб приложението (WAF) на производствен сайт: активира защита, добавя или премахва IP блокове, блокове на държави, пътни блокове и ограничения на скоростта |
| Разрешения за таблици за одит | /audit-permissions |
Одит на съществуващи таблици спрямо код на сайта и метаданни на Dataverse; създава HTML доклад, групиран по тежест с предложени поправки |
| Планиране на разгръщане | /plan-alm |
Открива състоянието на проекта, събира вашата стратегия за повишение, създава визуален план и оркестрира другите умения за управление на жизнения цикъл на приложението (ALM) в правилния ред |
| Авторско решение | /setup-solution |
Създава издател и решение, добавя компоненти на Power Pages, класифицира настройките на сайта и предлага променливи на околната среда и тайни на Azure Key Vault |
| Настройте конвейер хост | /ensure-pipelines-host |
Осигурява или открива хост среда за Power Platform Pipelines |
| Настройте конвейера | /setup-pipeline |
Регистрира дефиниция на конвейер в Dataverse и свързва етапите за промоция към целеви среди |
| Внедряване чрез конвейер | /deploy-pipeline |
Задейства внедряване на конвейер за целев етап с презаписвания на променливи в средата за всеки етап |
| Среда със силова връзка | /force-link-environment |
Преназначава целева среда към нов хост Power Platform Pipelines, когато конфликт на хоста блокира внедряването |
| Експортиране на решение | /export-solution |
Експортира решението като управляван или неуправляван zip файл, с проверка за пълнота преди експортиране |
| Импортиране на решение | /import-solution |
Импортира zip-файл на решение в целева среда, поетапно или директно |
| Тестов полигон | /test-site |
Проверява внедрен сайт чрез браузър-базиран тест: обхождане на страници, проверки на достъп по роли и верификация на уеб API |
| Разгръщане на диагностика | /diagnose-deployment |
Сравнява неуспешните внедрявания с каталог от известни грешки и предлага поправка |
Типичен работен процес
Често срещан работен процес от край до край следва следната последователност:
- /create-site : Страници за скеле, дизайн и изграждане
- /deploy-site : Качете в Power Pages среда
- /activate-site : Настройте публичен URL
- /setup-datamodel : Създаване на таблици в Dataverse
- /add-sample-data : Попълване на таблици с тестови записи
- /integrate-webapi : Генериране на клиентски код на API и конфигуриране на разрешения
- /create-webroles : Дефинирайте access роли
- /setup-auth : Добавете вход, излизане и потребителски интерфейс, базиран на роля
- /add-server-logic : Добавете сигурни сървърни крайни точки
- /add-cloud-flow : Интегриране на съществуващите Power Automate потоци
- /add-seo : оптимизация за търсачки
- /deploy-site : Пуснете финалните промени на живо
- /security-review : Направете пълен преглед на сигурността преди да преминете в продукция
- /plan-alm : Промотирайте сайта си в тестови и производствени среди
Съвет
- Не е нужно да следвате точно този ред. Всяко умение проверява собствените си предпоставки и ви казва, ако нещо липсва. Например, можете да стартирате
/setup-authпредварително/integrate-webapi, ако сайтът ви първо се нуждае от удостоверяване. - Ако не сте сигурни кой подход да използвате за всяка функция, използвайте
/integrate-backendстъпките от 4 до 10 поотделно. Той анализира вашия прототип, определя дали всяка функция се нуждае от уеб API, сървърна логика или облачен поток и оркестрира уменията в правилния ред. - За да добавите търсене, генерирано от AI, и да записвате резюмета, стартирайте
/add-ai-webapiслед/integrate-webapi. Той използва отново правата на таблицата и настройките на сайта, които/integrate-webapiсе конфигурират, така че го стартира, когато интеграцията с уеб API е направена.
Изградете своя Power Pages сайт
Това ръководство обхваща целия жизнен цикъл на изграждането на Power Pages сайт с плъгина – от изграждането на скелета до внедряването. Всяка стъпка описва какво казваш и какво прави плъгинът в отговор.
Стъпка 1: Създайте своя сайт
Опишете сайта, който искате, на естествен език: за какво служи, за кои страници му трябват и за всякакви предпочитания за дизайн като цветова схема, стил на оформление или шрифтове. Пусни /create-site или просто опиши сайта си и плъгинът разпознава намерението.
Ако не посочиш рамка, плъгинът те моли да избереш една (React, Vue, Angular или Astro), тогава:
- Свързва project от шаблон и прилага името на сайта, цветовете и дизайнерските жетони.
- Инсталира зависимости, стартира сървър за разработка и отваря live браузър преглед.
- Изгражда всяка страница, компонент и маршрут, който сте поискали, с релевантни изображения.
- Създава git комити на значими етапи, така че имаш вградена история за връщане назад.
Стъпка 2: Разположи сайта си
Пуснете /deploy-site, за да качите сайта си в Power Pages. Плъгинът:
- Потвърждава, че PAC CLI е инсталиран и сесията за автентикация е активна.
- Потвърждавай целевата среда с теб, преди да продължиш.
- Пуска продукционен билд и качва компилирания изход.
- Създава директория за внедряване artifacts, ако такава вече не съществува.
Бележка
Ако средата блокира определени файлове, плъгинът открива проблема и дава инструкции за разрешаването му.
Стъпка 3: Активирайте сайта си
Бягайте /activate-site , за да направите сайта публично достъпен. Плъгинът:
- Предлага поддомейн според името на сайта ти и ти позволява да го персонализираш.
- Осигурява запис на уебсайта чрез Power Platform API.
- Анкети, докато сайтът стане активен и не върне публичния URL.
В този момент имате работещ сайт на публичен URL. Останалите стъпки включват данни, удостоверяване и SEO. Пропуснете стъпките, които не се отнасят за вашия сайт.
Стъпка 4: Настройте своя модел на данни
Бягайте /setup-datamodel , за да създадете таблиците на Dataverse, от които вашият сайт се нуждае. Ако вече имате ER диаграма или конкретна схема, предайте я директно, вместо агентът да анализира кода ви.
Плъгинът генерира агент Data Model Architect , който:
- Анализира кода на вашия сайт, за да определи какви данни изискват страниците и компонентите.
- Прави заявки в Dataverse средата за съществуващи таблици, за да избегне дублирания.
- Предлага модел на данни с таблици, колони, типове данни и връзки, визуализиран като ER диаграма.
Вие преглеждате и одобрявате предложението. Плъгинът не създава нищо, докато не потвърдиш. След одобрението плъгинът създава таблиците и колоните чрез API извиквания и запазва манифестен файл, който използват стъпки 5 и 6.
Стъпка 5: Добавете примерни данни (по желание)
Бягай /add-sample-data , за да попълниш таблиците си с тестови записи. Тази стъпка изисква модела на данни от Стъпка 4.
Плъгинът изпълнява следните действия:
- Чете манифеста, за да разбере вашите таблици, колони и взаимоотношения.
- Генерира контекстуално подходящи стойности за всеки тип колона, като реалистични имейли, правдоподобни дати и форматирани суми на валутата.
- Вмъква записи в реда на зависимости (родителски таблици преди дъщерните) и автоматично обновява автентикационни токени по време на масови вмъквания.
Стъпка 6: Интеграция с Dataverse Web API
Пуснете /integrate-webapi се, за да замените имитацията на данните с живи заявки от Dataverse. Тази стъпка изисква модела на данни от Стъпка 4.
Плъгинът изпълнява следните действия:
- Сканира кодовата ви база за компоненти, които използват mock data, временни извиквания за извличане или твърдо кодирани масиви. Той свързва тези компоненти с вашите таблици в Dataverse.
- Създава агент за интеграция на уеб API за всяка таблица, който генерира:
- Споделен API клиент с управление на токени срещу фалшифициране и логика за повторни опити.
- TypeScript типове обекти и домейни съпоставяния.
- CRUD сервисен слой.
- Специфични за фреймуърк шаблони, като React куки, Vue композируеми устройства или Angular услуги.
- Създава агент Permissions Architect , който предлага разрешения за таблици и настройки на сайта.
Вие преглеждате и одобрявате предложението за разрешения. Плъгинът не създава никакви конфигурационни файлове, докато не потвърдиш.
Добавете обобщения, генерирани от AI (по желание)
Пуснете /add-ai-webapi към слоеве генеративни AI обобщения върху интеграцията си с уеб API. Умението свързва два API за обобщение на предварителни прегледи към страниците с детайли на записа и списъка:
- API за обобщение на търсенето: Връща кондензирано от изкуствен интелект обобщение на резултатите от търсенето с цитати.
- API за обобщение на данни: Връща обобщение на запис или анализи на ниво списък за таблица на Dataverse.
Тази стъпка надгражда върху модела на данни от Step 4 и интеграцията с уеб API от Step 6. Плъгинът изпълнява следните действия:
- Сканира кода ви за обобщени интеграционни точки и потвърждава целевите страници, таблици и кои API да използвате.
- Делегира всички липсващи предварителни изисквания за уеб API — права за таблици, списъци с колони и уеб роли — на
/integrate-webapiи/create-webroles, така че да има един източник на истина за разрешенията. - Създава AI Web API Integration агент, който генерира типизирана обобщаваща услуга (
aiSummaryService.ts) с обработка на токени против фалшифициране, специфични за framework wrappers (React hooks, Vue composables или Angular services) и жични обаждания на целевите страници. - Създава AI агент Web API Settings Architect , който създава
Summarizationнастройките на сайта за подсказки и ограничения на съдържанието.
Вие преглеждате и одобрявате предложенията. Плъгинът не генерира код и не създава настройки, докато не потвърдиш.
Бележка
API-тата за обобщаване са в предварителен преглед и зависят от включването на административни и контролни функции на ниво сайт. Ако резюметата не се появят след внедряването, потвърдете, че функцията е активирана чрез съответните настройки на сайта и администраторски контроли. За повече информация вижте Преглед на API за обобщаване на данни и търсене Power Pages с генеративен AI.
Стъпка 7: Създаване на уеб роли
Пуснете /create-webroles, за да дефинирате ролите на потребителския access. Плъгинът:
- Прави заявки в средата ти за съществуващи уеб роли, за да избегне дублирания.
- Генерира дефиниции на роли с уникални идентификатори.
- Налага всеки сайт да има най-много една анонимна и една удостоверена роля.
Стъпка 8: Настройте удостоверяване
Бягайте /setup-auth , за да добавите вход, излизане и контрол на достъпа по роли към сайта си. Плъгинът поддържа следните доставчици на идентичност и можете да конфигурирате един или няколко доставчика едновременно.
| Provider | Най-добро за |
|---|---|
| Външен ИД на Microsoft Entra (препоръчва се за сайтове с клиенти) | Публични сайтове и клиентски портали с регистрация за самообслужване. |
| Microsoft Entra ID | Вътрешни портали за служители или партньорски сайтове за бизнес към бизнес (B2B). Power Pages автоматично конфигурира родителския наем на сайта, така че не е нужно да въвеждате информация за наемателя. |
| Microsoft, Facebook, Google | Социално влизане за потребителска аудитория. |
| Локална автентикация | Вход с потребителско име и парола. Не се препоръчва и е конфигурирано само когато изрично го поискаш. |
За повече информация относно поддържаните доставчици, включително протоколи и конфигурационни съображения, вижте Преглед на автентикацията в Power Pages.
Плъгинът:
- Анализира сайта ви (цел, страници, аудитория) и предлага разумен стандарт. Например, плъгинът предлага Външен ИД на Microsoft Entra с отворена регистрация за сайт, насочен към клиента, или Microsoft Entra ID с регистрация само по покана за вътрешен портал. Приемате препоръката или избирате свои собствени доставчици.
- За всеки доставчик ви води през всички предварителни стъпки в административния център на доставчика на идентичност, като създаване на наематели, регистрация на приложения, създаване на потребителски потоци и улавяне на клиентски ID-та и пренасочващи URI. Плъгинът валидира всяка стойност, която поставите обратно в разговора, и изчислява точния URI за пренасочване на вашия сайт, така че стойността, поставена в регистрацията на приложението, да съвпада със стойността, записана в настройките на сайта.
- Пита как данните от потребителския профил трябва да се пренасят от доставчика на идентичност към контактния запис на Dataverse (картографиране на претенции), дали да се синхронизира при всяко влизане или само при първо влизане, и дали да се свързват автоматично външни входове към съществуващи контакти по имейл.
- Генерира услугата за автентикация, типови декларации, ролеви упълномощаващи инструменти (
hasRole,RequireAuth,RequireRole), сесия keepalive hook, която предотвратява безшумно изтичане на SPA сесиите, и компонент за интерфейс за влизане/излизане, интегриран с оформлението на вашия сайт. Плъгинът използва шаблоните на вашия фреймуърк навсякъде, като React хукове, Vue композируеми файлове, Angular услуги или Astro компоненти. - Когато е конфигуриран повече от един доставчик, генерира
/loginстраница, рендерирана в избраното от вас оформление: хоризонтален ред, вертикален стек, основен прожектор или таб. - Записва настройките на съответстващия сайт под
.powerpages-site/site-settings/всеки доставчик, режим на регистрация, картографиране на искове и опционална функция.
Плъгинът също така конфигурира следните опционални функции, когато ги включите:
-
Условия и правила: SPA страница, която
/termsпотребителите трябва да приемат преди да завършат входа, както и настройките за съответстващ сайт и откъси от съдържанието. -
Страница с потребителски профил: Страница
/user-profileSPA, където влезли в системата си потребители редактират контактната си информация чрез Power Pages Web API. - Федеративно излизане: Също така изписва потребителя при доставчика на идентичност при излизане от сайта, при споделени устройства или регулирани ситуации.
Съвет
За да добавите втори доставчик на идентичност към съществуващ сайт, стартирайте /setup-auth отново. Плъгинът открива какво вече е конфигурирано и предлага да добави нов доставчик, без да презаписва съществуващите. Този подход е полезен при инкрементални сценарии, като започване с Външен ИД на Microsoft Entra и по-късно добавяне на Google за социално влизане.
Бележка
Авторизацията от страна на клиента (RequireAuth, RequireRole, hasRole) е само за потребителско изживяване. Той контролира това, което потребителят вижда. Сървърните права за таблици, конфигурирани чрез /integrate-webapi прилагане на действителна сигурност.
Стъпка 9: Добавете логика на сървъра
Стартирайте /add-server-logic , за да добавите сигурни сървърни крайни точки към вашия сайт. Използвайте Server Logic , когато сайтът ви се нуждае от логика, която не може да се стартира в браузъра, като външни API извиквания, проверка от страна на сървъра, управление на тайни или операции с данни между обекти.
Важно
Поддръжката на сървърна логика изисква PAC CLI версия 2.6.3 или по-нова. Използвайте скрипта за бърза инсталация , за да обновите до последната версия.
Опишете какво ви трябва на ясен език и плъгина:
- Създава агент Server Logic Architect, който анализира вашия случай на употреба и класифицира неговата сложност.
- Предлага дизайн на крайната точка, конфигурация на сигурността и всички необходими разрешения за таблици за вашия преглед.
- След като одобриш, генерира сървърната JavaScript крайна точка на
/_api/serverlogics/<name>. - Създава типизирана клиентска услуга, която извиква крайната точка от вашите компоненти.
- Актуализира компонентите си, за да се обади на новата услуга.
- Конфигуриране на уеб ролевите разпределения и таблиците за разрешенията за крайната точка.
Вие преглеждате и одобрявате предложението. Не се генерира код, докато не потвърдиш.
Чести случаи на употреба:
- Свържете се с външни услуги. Извиквайте REST API, Azure Functions или услуги на трети страни без да разкривате данни за данни. (Урок: взаимодействие с външни услуги)
- Извършвайте защитени операции с данни. Заявявай, обновявай или изтривай записи в Dataverse с последователна валидация от страна на сървъра. (Урок: взаимодействие с таблици на Dataverse)
- Пусни персонализирана логика. Агрегиране на данни между таблици, прилагане на бизнес правила или изчисляване на производни стойности преди връщане на резултатите на клиента.
- Управлявайте тайните от страна на сървъра. Съхранявайте идентификационните данни и API ключовете на сървъра, никога в клиентския код. (Урок: взаимодействайте с Microsoft Graph и SharePoint)
Бележка
Пускай /add-server-logic се веднъж за всяка употреба. Например, ако сайтът ви се нуждае както от крайна точка за валидация на инвентара, така и за глобално търсене, използвайте умението два пъти.
Стъпка 10: Интегриране на облачните потоци
Пуснете /add-cloud-flow, за да интегрирате съществуващите Power Automate cloud flows във вашия сайт. Това умение свързва вашия Power Pages сайт с потоци, които вече сте създали в Power Automate. Това не създава нови облачни потоци.
Плъгинът:
- Регистрира съществуващия облачен поток с вашия сайт.
- Генерира клиентски код, който да задейства потока от вашите страници.
- Обработва асинхронни състояние на работния поток и модели за обратно извикване.
- Свързва обмена на данни между страницата и потока.
Използвайте /add-cloud-flow за потоци за одобрение, имейл известия, планирани задачи и автоматизация, управлявана от събития, които се управляват по-добре от Power Automate, отколкото от сървърни крайни точки.
Алтернатива: Използвайте /integrate-backend, за да планирате целия слой на услугата
Ако не сте сигурни кои функции изискват уеб API, Server Logic или облачен поток, използвайте /integrate-backend вместо ръчно стъпки от 4 до 10. Това умение действа като оркестратор, който:
- Анализира вашия прототип, за да идентифицира всички характеристики, които се нуждаят от сервизен слой.
- Класифицира всяка функция в правилния подход: Web API за стандартен CRUD, Server Logic за сървърна валидация и външни API, или cloud flow за потоци и автоматизация на одобрението.
- Предлага последователен план за изпълнение с всички умения, зависимости и конфигурации.
- След като одобриш, оркестрирай уменията в правилния ред.
Планът е постоянен, възобновим и редактираем. Спри след всяка стъпка, за да прегледаш генерирания код или да тестваш сайта, и продължи оттам, където си спрял, като стартираш /integrate-backend отново.
Стъпка 11: Добавете SEO
Бягайте /add-seo , за да оптимизирате сайта си за търсачки. Плъгинът:
- Открива маршрути от конфигурацията на рутера на вашия фреймуърк.
- Генерира директиви за търсачки и карта на сайта за всички открити маршрути.
- Добавя мета тагове: viewport, charset, описание, Open Graph, Twitter карта и препратки към favicon.
Стъпка 12: Разполагане на финалния обект
Ако изпълниш някакви допълнителни стъпки, стартирай /deploy-site отново, за да пуснеш промените на живо. Плъгинът изпълнява продукционна версия и качва сайта заедно с всички артефакти от внедряването (права за таблици, настройки на сайта, уеб роли, логически файлове на сървъра) във вашата Power Pages среда.
Стъпка 13: Направете проверка на сигурността
Бягайте /security-review , за да направите цялостен преглед на сигурността на сайта си преди да преминете към продукция. Това умение оркестрира фокусираните умения за сигурност и консолидира всяко откритие в единен HTML отчет на docs/security-review-<timestamp>.html.
Плъгинът задава един въпрос на ясен език за вашата цел и избира съответния набор от фокусирани умения:
| Цел | Какво проверява |
|---|---|
| Код и конфигурация | Изходен код, зависимости, права за таблици и конфигурация на автентикация. Работи само с локални файлове – не е необходимо внедряване. |
| Готовност за освобождаване (препоръчително) | Пълен преглед преди публикуване. Изпълнява всички фокусирани умения: код и зависимости, сканиране на разположен сайт, заглавни заглавия за сигурност на браузъра, защитна стена за уеб приложения, права за таблици и автентикация. |
| Разположен обект | Само сканиране на живо на разположен обект. Полезно за продължаващо наблюдение на публикуван сайт. |
След като потвърдите, плъгинът изпълнява уменията, фокусирани върху съпоставянето, паралелно и записва техните резултати в един отчет:
-
/scan-code: Изпълнява статичен анализ (opengrep) и сканиране на зависимости (trivy) върху локални изходни файлове. Surfaces кодира шаблони, уязвими пакети, твърдо кодирани тайни и проблеми с лицензи. Ако някой от инструментите не е инсталиран, умението предлага ръчен преглед на кода като резервен вариант. -
/scan-site: Започва сървърно сканиране за сигурност на активния сайт и получава най-новия доклад. Продължителността на сканирането зависи от размера на обекта – малките обекти завършват за минути, големите могат да отнемат часове. Резултатите са групирани по тежест. Изисква разположен обект. -
/manage-headers: Проверява HTTP заголовките за сигурност, конфигурирани по:.powerpages-site/site-settings/Content Security Policy, X-Frame-Options, CORS, бисквитки SameSite и свързани настройки. Идентифицира липсващи или слаби стойности и предлага препоръчителни стандарти. -
/manage-firewall: Инспектира защитната стена на уеб приложението (WAF) за продукционния сайт, включително управлявано състояние и потребителски правила (IP блокове, държави, пътни блокове, лимити на скоростта). Достъпни само на производствени обекти в поддържани региони; Умението открива и докладва проблеми с допустимостта. -
/audit-permissions: Одитира съществуващите права на таблици спрямо код на сайта и метаданни от Dataverse. Появява се липсващи права, прекалено разрешителни роли, неизползвани права и проблеми с YAML схемата.
Консолидираният доклад групира резултатите по секции, отваря се във вашия браузър по подразбиране и включва насоки за коригиране на обикновен език. От чата плъгинът предлага да разгледа решенията – изберете находка и плъгинът интерактивно активира умението, фокусирано върху съвпадението, за да приложи промяната.
Бележка
Прегледът на сигурността никога не прилага промени автоматично. Всяко фокусирано умение се изпълнява в режим само за четене по време на консолидираното изпълнение. За да приложите поправка, плъгинът активира умението за съвпадение интерактивно, след като изберете действието.
Съвет
Можеш също да използваш всяко фокусирано умение самостоятелно:
- Пуснете
/scan-codeсе по време на разработката, за да откриете проблеми на ниво код рано. - Стартирайте
/manage-headers, за да поправите конкретна грешка в Политиката за сигурност на съдържанието или да настроите CORS. - Пуснете
/manage-firewallсе, за да добавите лимит на тарифите на страницата за влизане или да блокирате трафика по държави. - Стартирай
/audit-permissionsслед смяна на правата на таблицата, за да провериш дали все още съвпадат с кода на сайта. - Повтори
/security-reviewсе с целта на Deployed site да наблюдава производствен обект във времето.
Проверете сайта си
След като завършиш уменията, провери дали сайтът ти Power Pages работи правилно.
- Отидете на Power Pages.
- Намерете вашия сайт в списъка Активни сайтове .
- Прегледайте сайта си на десктоп чрез опцията Preview .
- Тествай функционалността.
Промотирайте сайта си в различни среди
След като сайтът ви работи в среда за разработка, използвайте уменията за управление на жизнения цикъл на приложението (ALM), за да го популяризирате в тестови и производствени среди. Плъгинът представя сайта ви като решение за Power Platform, идентифицира стойности, които варират в различните среди, и внедрява решението чрез Power Platform Pipelines или чрез ръчен експорт и импорт.
За да използвате ALM уменията, ви трябва поне една целева Power Platform среда (тестова, продукционна или и двете). За да използвате опционалния поток на Azure Key Vault за тайни, също така е необходимо разрешение да създадете ключов сейф в абонамента си за Azure.
Планиране на внедряването
Бягай /plan-alm , за да започнеш.
/plan-alm е входната точка за ALM и оркестрира другите ALM умения, така че обикновено не ги използваш директно. Плъгинът:
- Открива текущото състояние на вашия проект, решение и целеви среди.
- Пита за вашата стратегия за промоция (Power Platform Pipelines или ръчен експорт и импорт), целевите етапи и евентуални ограничения за прилагане.
- Генерира визуален план
docs/alm-plan.html, който показва всяко действие, което възнамерява да предприеме. - Чака одобрението ти, преди да използва някакво следващо умение.
Планът остава на диска, така че всяко следващо умение чете и записва към същия задържан план. Ако една фаза не успее, стартирайте /plan-alm отново и тя се възобновява от мястото, където е спряла.
Автор на решението
Бягайте /setup-solution , за да опаковате сайта си като решение за Power Platform. Плъгинът:
- Създава издател и решение, след което добавя компонентите на Power Pages: сайта, уеб ролите, сървърните логически крайни точки, регистрациите на cloud flow и настройките на OAuth доставчика.
- Класифицира всяка настройка на обекта според чувствителност и предлага променливи на околната среда за стойности, които варират в различните среди.
- Предлага да се осигури Azure Key Vault и да се съхраняват стойности от типа идентификационни данни, като връзки и API ключове, в него.
- Работи в синхронизиран режим, когато вече съществува решение за вашия сайт, за да се съгласуват компонентите без да се създава ново решение.
Вие преглеждате и одобрявате предложението. Плъгинът не създава никаква конфигурация, докато не потвърдиш.
Съвет
Ако решението ви е твърде голямо или заплетено, за да се разположи надеждно, плъгинът препоръчва разделяне и предлага къде да се раздели. Потвърдете разпределението преди да се наложат промените.
Внедряване с Power Platform Pipelines
Ако изберете Power Platform Pipelines като стратегия за промоция, плъгинът изпълнява следните умения:
-
/ensure-pipelines-hostосигурява или открива хост среда за конвейери на Power Platform. Умението избира най-евтиния вариант за вашия наемател: безплатен хостинг на платформата, приложението Pipelines в съществуваща среда или персонализиран хост. -
/setup-pipelineрегистрира дефиниция на конвейер в Dataverse, конфигурира избраните етапи и свързва всеки етап с целева среда. -
/deploy-pipelineзадейства внедряване за етап, прилага променливите за всяка етапна среда иdeploymentSettings.jsonпроследява състоянието в регистъра на разгръщане.
Ако внедряването се провали, защото целевата среда вече е свързана с друг хост Power Platform Pipelines, плъгинът може да се стартира /force-link-environment , за да го преназначи. Действието изисква вашето изрично съгласие и е обратимо.
Разгръщане с ръчен експорт и импорт
Ако изберете ръчния път, плъгинът се изпълнява:
-
/export-solutionда експортира решението като управляван или неуправляван ZIP, с проверка за пълнота преди експортиране. -
/import-solutionза импортиране на ZIP адреса в целевата среда, или поетапно за проверка на зависимостите първо, или директно.
Активирайте и валидирайте разположеното място
След успешно внедряване в целевата среда, плъгинът:
- Изпълнява
/activate-siteсе, за да осигури публичния URL адрес в целевата среда. - Бяга
/test-site, за да провери разполагането. Плъгинът използва браузър за обхождане на представителни страници, извършване на проверки на достъп по роли, проверка/_api/на повиквания и улавяне на форми на отговори от/_api/serverlogics/крайни точки. Умението отчита резултата катоPASS,WARNINGS, илиFAIL, с детайли за проверка от плана.
Ако дадена стъпка не успее, плъгинът се изпълнява /diagnose-deployment. Умението съпоставя неуспеха с каталог от известни грешки при внедряване, като остарял манифест, липсващи зависимости, конфликти между хостове, блокиран JavaScript или изтекла автентикация, и предлага конкретно решение. Плъгинът никога не прилага поправка без вашето съгласие.
Бележка
Всяко умение на ALM чете и записва към артефакти на диска: манифест на решение, данни за план, регистър на тръбопровода, регистър за внедряване и резултати от тестове. Оркестрацията е възобновима и аудитираема. За да видите какво се е случило на всяка крачка, разгледайте артефактите.
Съвети и добри практики
Следващите съвети ви помагат да извлечете максимума от плъгина и AI кодиращия агент при създаването на Power Pages сайтове.
Следете изхода на терминала за липсващи инструменти при първото пускане
Плъгинът предоставя уменията и работните потоци, но AI агентът за кодиране – GitHub Copilot CLI или Claude Code – изпълнява самите команди на вашата машина. Когато използвате тези инструменти за първи път, наблюдавайте внимателно изхода на терминала. AI кодиращият агент изпълнява команди и скриптове зад кулисите, а някои от тези команди зависят от инструменти, които може да не са инсталирани на вашата машина. Ако дадена стъпка не успее, изходът на терминала обикновено показва кой инструмент или команда не е успял да намери.
Ако видите грешка като command not found или is not recognized, инсталирайте липсващия инструмент и задействайте работния процес отново. AI кодиращият агент продължава оттам, където е спрял, след като инструментът е наличен.
Прегледайте предложенията на агентите преди одобрение
AI кодиращият агент представя предложения, като тези от Data Model Architect и Permissions Architect, преди да направи промени. Кодът и конфигурацията, генерирани от AI кодиращия агент, могат да бъдат неточни, затова прегледайте, тествайте и валидирайте всяко предложение и целия генериран код, преди да го одобрите или разположите.
- Предложения за модели на данни: Проверете дали имената на таблиците, типовете колони и връзките съответстват на изискванията на вашия бизнес. По-лесно е да се коригира предложението, отколкото да се преименуват колони след като вече са вмъкнати данни.
- предложения за разрешения: Проверете дали всяка роля има правилното ниво на access (създаване, четене, обновяване, изтриване) за всяка таблица. Прекалено толерантните разрешения на таблиците са често срещан риск за сигурността.
- Генериран код: Прочети генерирания код и тествай сайта локално преди внедряване. Генерираният от AI код може да съдържа грешки или проблеми със сигурността.
Поставете грешки директно с контекст
Когато нещо се провали, било то грешка при сглобяване, неуспешно внедряване или изключение по време на изпълнение в браузъра, копирайте пълния изход на грешката. Поставете го заедно с кратко описание на това, което правите. Колкото повече контекст предоставите, толкова по-бързо ще се оправи.
Пример: Грешка при билд
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>
Съвет
Включи името на файла, командата, която си изпълнил, и какво си очаквал да се случи. Плъгинът използва този контекст, за да локализира проблема и да приложи целенасочено решение, вместо да гадае.
Сподели грешки в уеб API с пълния URL адрес на заявката
Често срещан проблем след внедряване е грешка 403 от Power Pages Web API, когато колона не е активирана за достъп до API. Когато срещнете тази грешка, поставете пълния API URL адрес и пълния JSON отговор за грешка. Съобщението за грешка ви казва точно коя таблица и колона трябва да се поправят, а плъгинът може да актуализира разрешението за таблица YAML и настройките на сайта вместо вас.
Пример: Колоната не е активирана за 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"
}
}
}
Тази грешка (AttributePermissionIsMissing) означава, че колоната _crd50_propertyid_value за търсене съществува в таблицата на Dataverse, но не е посочена в конфигурацията на разрешения за таблица за уеб API. Плъгинът решава тази грешка чрез добавяне на липсващата колона към разрешението на таблицата YAML .powerpages-site/table-permissions/ in и преразполагане.
Бележка
Power Pages Web API изисква всяка колона, върната от API извикване, да бъде изрично посочена в разрешителната таблица.
Свойствата за търсене (с префикс _ с и суфикс с _value) лесно се пропускат, защото името на API се различава от логическото име на колоната в Dataverse. Когато видиш AttributePermissionIsMissing, винаги добавяй тази колона към разрешенията на таблицата. Не променяй заявката към API.
Бъди конкретен относно това, което искаш
Неясните заявки водят до неясни резултати. Кажете на плъгина точно какво ви трябва, включително предпочитания за оформление, полета с данни и поведение.
| Вместо | Изпробване |
|---|---|
| "Направете страница за работа" | "Създайте страница с обяви за работа с лента за търсене най-отгоре, филтрирайте чипове за местоположение и отдел, както и карта с длъжност, компания, диапазон на заплата и дата на публикуване за всяка работа" |
| "Оправи стилизирането" | "Картите за работа се подреждат вертикално на работния плот. Направете ги да се показват в триколонна решетка с 16px разстояние на екрани по-широки от 768px" |
| "Добави малко данни" | "Добавете 20 примерни обяви за работа в четири отдела (Инженеринг, Маркетинг, Продажби, Човешки ресурси) с реалистични длъжности, заплатата варира между $60k-$180k и дати за публикуване през последните 30 дни" |
| "Настрой API-то" | "Свържете компонента JobListings към таблицата cr_jobposting Dataverse. Заменете хардкодирания масив с реално API повикване, което извлича заглавие, отдел, заплата и дата на публикуване" |
| "Добави вход" | "Настройте вход за Външен ИД на Microsoft Entra с отворена регистрация, плюс Google като втори доставчик. Покажете ги като хоризонтален ред на страницата за влизане." |
Използвайте скрийншоти за визуални проблеми
Когато сайтът не изглежда правилно в браузъра, направете скрийншот и го поставете директно в разговора или дайте път към файла. Визуалният контекст помага да се идентифицират проблеми с оформлението, разстоянието и стила, които е трудно да се опишат в текста.
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.
Итерация на малки стъпки
Вместо да описваш цял сайт в един подтик, гради постепенно. Започнете със структурата и оформлението, след това добавяйте функции една по една. Този подход ви дава възможност да преглеждате и коригирате курса на всяка стъпка.
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
Съвет
След всяка стъпка проверявайте прегледа на браузъра. Ако нещо не е наред, оправи го преди да продължиш напред. По-лесно е да се оправят проблеми в един компонент, отколкото да се разплитат на цял сайт.
Поискайте обяснение преди да одобрите
Когато не сте сигурни относно предложена промяна, особено за разрешения, модификации на модел на данни или конфигурация на автентикация, помолете плъгина да обясни какво планира to do и защо, преди да одобрите.
Before you create the table permissions, explain what access each role will have and why. I want to understand the security implications.
Изпълнявайте уменията самостоятелно, за да се възстановите от проблеми
Ако дадено умение се провали по средата, не е нужно да започваш отначало. Всяко умение се изпълнява независимо и може да продължи оттам, където е спряло. Например, ако /integrate-webapi се провали на третата таблица, можете да я стартирате отново и тя открива вече свършената работа.
/integrate-webapi failed while processing the cr_applications table. Here's the error: [paste error]. Resume the integration from where it stopped.
Свързано съдържание
- Създаване и внедряване на едностранично приложение в Power Pages
- Конфигуриране на автентикация за Power Pages сайт
- Преглед на логиката на сървъра
- Power Pages Уеб API референция
- Преглед на API за обобщаване на данни
- Power Pages търсене с генеративен AI
- Справочник на команди страници в PAC CLI
- GitHub Copilot CLI
- Кодът на Клод