Napomena
Pristup ovoj stranici zahteva autorizaciju. Možete pokušati da se prijavite ili da promenite direktorijume.
Pristup ovoj stranici zahteva autorizaciju. Možete pokušati da promenite direktorijume.
Microsoft Power Platform omogućava vam da proširite funkcionalnost vaše Power Apps aplikacije platna pomoću REST API-ja. Kada se radi o složenim algoritmima ili sa mnogim izvorima podataka, prebacivanje logike iz aplikacije platna na RESTful API može biti dobar izbor koji će vam pomoći da vaše formule unutar aplikacije Power Apps platna budu jednostavne dok se krećete složenije funkcionalnosti na strani servera. Power Platform prilagođeni konektori omogućavaju aplikacijama platna da koriste REST API baš kao i drugi izvor podataka.
Napojnica
U članku je naveden primer scenarija i vizuelni prikaz načina korišćenja REST API-ja za proširenje funkcionalnosti aplikacija platna. Ovo rešenje je generalizovani primer arhitekture scenarija, koji se može koristiti za mnogo različitih scenarija i industrija.
Dijagram arhitekture
Workflow
- Aplikacija platna: Aplikacija Power Apps platna koristi prilagođeni konektor za pristup operacijama koje je izložila Azure funkcija. Korisnik se autentifikuje u aplikaciji koristeći Entra ID i pristup podacima je ograničen na podatke kojima korisnik ima pristup.
- Prilagođeni konektor: Prilagođeni konektor opisuje koje operacije aplikacija može koristiti iz REST API-ja koji u primeru implementira Azure funkcija. Korišćenjem prilagođenog konektora, Power Apps aplikacija platna može da koristi logiku kao i bilo koji drugi izvor podataka.
- Microsoft Entra ID aplikacije: Azure funkcija je obezbeđena Microsoft Entra pomoću ID aplikacije. Druga Microsoft Entra ID aplikacija je registrovana i konfigurisana na prilagođenom konektoru kako bi omogućila aplikaciji Power Apps platna da pristupi operacijama Azure Function.
- Azure funkcija: Azure funkcija implementira RESTful API koji nudi jednu ili više operacija koje su izložene aplikaciji Power Apps platna tako što će izvoziti prilagođeni konektor sa Azure portala ili ručnom konfiguracijom. Azure funkcija je obezbeđena registracijom aplikacije Entra ID kako bi se osiguralo samo ovlašćene pozivaoce.
- Azure Cosmos DB: Azure funkcija može koristiti Azure Cosmos DB ili Azure SKL ili bilo koju drugu prodavnicu podataka u oblaku koja je potrebna za upravljanje podacima. U stvari, funkcija bi mogla da radi sa podacima u Microsoft Dataverse korišćenju pristupa funkcije zbog složenosti logike.
Komponente
- Power Platform okruženje: Sadrži resurse Power Platform kao što su oni Power Apps koji implementiraju korisničko iskustvo aplikacije u prodavnici. Ovi resursi se premeštaju iz jednog okruženja u drugo (npr. Dev to Test) koristeći Dataverse rešenja.
- Power Apps: Power Apps Koristi se za implementaciju korisničkog iskustva rešenja. Proizvođači su u mogućnosti da izgrade aplikaciju koristeći prilagođeni konektor koji je kreirao programer Azure funkcije kao izvor podataka aplikacije.
- Prilagođeni konektor: Power Platform prilagođeni konektori opisuju operacije i strukture podataka RESTful API-ja. Oni omogućavaju da se API lako koristi iz resursa kao što je Power Apps aplikacija platna. Kada se koriste iz Power Apps njih omogućavaju API da se upućuje kao i bilo koji drugi izvor podataka.
Detalji scenarija
Power Apps omogućava organizacijama da kreiraju prilagođeno korisničko iskustvo i korišćenjem REST API-ja poslovna logika je centralizovana i pristupa aplikaciji pomoću prilagođenog konektora. Ovaj pristup takođe može omogućiti aplikaciji Power Apps da deluje kao integrator više pozadinskih usluga pružajući jedan pogled korisniku podataka i logike iz svih izvora. Koristeći pristup REST API-ja, takođe možete prebaciti složenost interakcije sa više drugih sistema na komponentu koja implementira REST API i pojednostaviti implementaciju aplikacije platna, dok istovremeno pruža isto korisničko iskustvo.
U gornjem primeru, aplikacija U prodavnici se kreira pomoću Power Apps aplikacije platna. Aplikacija omogućava saradniku prodavnice da brzo sačuva zahtev za obaveštenje o zaostalom nalogu za kupca kada stavka nije na zalihama. Aplikacija koristi jednu operaciju RecordBackorder koja je konfigurisana na prilagođenom konektoru koji opisuje pozadinsku operaciju Azure Function. U ovom primeru, Azure funkcija je implementacija REST API-ja. Možete koristiti bilo koju tehnologiju koja omogućava kreiranje RESTful servisa za implementaciju ovog obrasca.
Ova arhitektura nudi fleksibilnost, ali takođe znači da je potrebno više rada programera na prvom kodu za razvoj i održavanje RESTful servisa i sloja podataka. Generalno, kako se složenost formula aplikacija platna povećava, trebalo bi da razmotrite ovu vrstu arhitekture. Na primer, kada je potrebno više izvora podataka da bi se izgradio jedan prikaz, korišćenje API sloja može pomoći u pružanju performantnog iskustva, jer se odgovor podataka može oblikovati na strani servera i efikasnije isporučiti klijentu. Korišćenje ovog srednjeg sloja znači da možete dodati sloj keširanja na strani servera i primeniti bogatiju telemetriju za aplikaciju.
Pitanja na koja treba obratiti pažnju
Ova razmatranja implementiraju stubove Power Platform Vell-Architected, skup vodećih načela koja poboljšavaju kvalitet radnog opterećenja. Saznajte više u Microsoft Power Platform Vell-Architected.
Pouzdanost
Dizajnirajte svoje radno opterećenje kako biste izbegli nepotrebnu složenost – Korišćenje REST API pristupa Power Apps iz aplikacije preko prilagođenog konektora izbegava nepotrebnu složenost i takođe centralizuje logiku gde bi je mogle koristiti druge aplikacije u organizaciji. Prilagođeni konektor omogućava proizvođaču Power Apps da može da koristi operacije iz RESTFul API-ja kao i bilo koju drugu operaciju izvora podataka.
Test za otpornost i dostupnost – Pomeranjem logike iz aplikacije platna na REST API, trebalo bi da budete u mogućnosti da nezavisno testirate API odvojeno od aplikacije koja ga koristi.
Izmerite i objavite zdravstvene indikatore - telemetrija treba da bude snimljena iz REST API komponente da bi se pratilo njeno zdravlje. Na primer, korišćenje Azure Monitor - Application Insights logging bi obezbedilo adekvatno praćenje komponente.
Bezbednost
Kreirajte namernu segmentaciju i perimetre – Obezbeđivanje da aplikacija koristi odvojena Power Platform okruženja za podršku fazama životnog ciklusa aplikacije i obezbeđivanje da samo pravi korisnici imaju pristup svakoj fazi može da podrži vaše politike segmentacije. Takođe je važno da su Entra ID aplikacije registrovane odvojene između okruženja kako bi se zadržala zaštita svake faze podataka i da se ne mešaju u okruženjima.
Operativna izvrsnost
Usvojite sigurnu praksu primene - Standardizujte primenu bilo kakvih promena u aplikaciji Power Apps pomoću automatizovanih procesa primene, kao što su cevovodi. Promovišite aplikaciju u proizvodnju tek nakon testiranja promena.
Implementirajte strategiju za ublažavanje neuspeha raspoređivanja– Sa zavisnošću između aplikacije i REST API-ja, trebalo bi da osigurate da imate testiranu strategiju za ublažavanje uvođenja bilo koje koja razvija greške nakon ažuriranja jedne od komponenti.
Efikasnost performansi
Dizajn da zadovolji zahteve performansi – Procenite performanse rešenja i obim zahteva podataka. Evaluacija treba da obuhvati kako se pristupa podacima i procenu kako Power Apps direktno korišćenje različitih izvora podataka može biti previše brbljivo sa izvorima podataka. Ovo može stvoriti usporavanje performansi zbog kašnjenja pojedinačnog zahteva koji se šalje u svaku prodavnicu podataka. Na primer, ako je vaša aplikacija imala logiku koja je radila preko velikog broja redova u izvoru podataka, možda ćete moći da prebacite sav taj mrežni saobraćaj na pozadinsku Azure funkciju. Svođenje na jednu interakciju sa REST API-jem koji bi zauzvrat upravljao interakcijom sa više drugih izvora podataka gde bi se to moglo efikasnije uraditi.
Optimizujte logiku - Kako logika postaje složenija u aplikaciji platna, Azure Functions ili slične pozadinske implementacije RESTful API-ja mogu da prebace tu logiku na centralizovanu uslugu za višekratnu upotrebu. Korišćenje prilagođene mogućnosti konektora za opisivanje tih RESTful API-ja omogućava aplikacijama platna da koriste svoje konfigurisane operacije kao i bilo koji drugi izvor podataka.
Performanse testa– Zajedno sa testiranjem funkcionalnosti i neuspeha, važno je testirati i razviti osnovnu liniju za performanse i proceniti je kao deo vašeg ciklusa izdavanja ako je API osetljiv na promene u vremenu završetka rada.
Optimizacija iskustva
Dizajn za efikasnost – Aplikacije koje omogućavaju korisnicima da pristupe više izvora podataka iz jedne Power Apps aplikacije bez potrebe da komuniciraju sa više pojedinačnih aplikacija čine korisnika efikasnijim i dobro koriste više prilagođenog vizuelnog iskustva.
Saradnici
Microsoft održava ovaj članak. Sledeći saradnici su napisali ovaj članak.
Glavni autori:
- Mehdi Slaoui Andaloussi, glavni inženjerski menadžer