Portaalien verkko-ohjelmointirajapinnan yleiskuvaus

Portaalien verkko-ohjelmointirajapinta mahdollistaa monipuolisemman kokemuksen Power Pages -sivustoissa. Verkko-ohjelmointirajapinnan avulla voit suorittaa luonti-, luku-, päivitys- ja poistotoimintoja kaikissa Microsoft Dataverse -taulukoissa verkkosivuiltasi. Voit esimerkiksi luoda uuden tilin tai päivittää yhteyshenkilön käyttämättä lomaketta tai monivaiheista lomaketta käyttämällä portaalien WWW-ohjelmointirajapintaa.

Www-ohjelmointirajapinta käyttää /_api reittiä (esimerkiksi https://yoursite.powerappsportals.com/_api/accounts) ja noudattaa Dataverse Web API:n kanssa samankaltaista RESTful-mallia.

Tärkeä

  • Portaalien verkko-ohjelmointirajapinta on suunniteltu luomaan monipuolinen käyttökokemus portaalin sivuille. Sitä ei ole optimoitu kolmannen osapuolen palvelujen tai sovellusten integrointiin. Portaalien verkko-ohjelmointirajapinnan käyttämistä integroinneissa muiden Power Pages -sivustojen kanssa ei tueta.
  • Portaalien verkko-ohjelmointirajapinnan toiminnot tietoihin liittyviin taulukoihin, kuten tileihin, yhteyshenkilöihin tai mukautettuihin taulukoihin. Taulukon metatietojen tai portaalin määritystaulukon tietojen määrittämistä – esimerkiksi portaalitaulukoiden, kuten adx_contentsnippet-, adx_entityform- tai adx_entitylist-taulukoiden, määrittämistä – ei tueta portaalien WWW-ohjelmointirajapinnan avulla. Täydellinen luettelo on jäljempänä tässä artikkelissa kohdassa ei-tuetut määritystaulukot.
  • Portaalien Web API hyötyy palvelinpuolen välimuistista, joten web-ohjelmointirajapinnan myöhemmät kutsut ovat nopeampia kuin alkuperäiset kutsut. Portaalin palvelinpuolen välimuistin tyhjennys heikentää suorituskykyä tilapäisesti.
  • Portaalien verkko-ohjelmointirajapintatoiminnot edellyttävät Power Pages -käyttöoikeutta. Esimerkiksi anonyymin käyttäjän tekemät Web API -kutsut lasketaan anonyymiin käyttäjäkapasiteettiin. Todennettujen (sisäisten tai ulkoisten) käyttäjien tekemiä verkko-ohjelmointirajapintakutsuja ei lasketa mukaan sivunäkymiin, mutta ne vaativat todennetun käyttäjän kapasiteetin käyttöoikeudet. Lisätietoja on artikkelissa Power Pages käyttöoikeuksien usein kysytyt kysymykset.
  • Toimintojen ja funktioiden kutsumista WWW-ohjelmointirajapinnan avulla ei tueta.

Verkko-ohjelmointirajapinnan toiminnot

Portaalien verkko-ohjelmointirajapintaa sisältää Dataverse -toimintojen ominaisuuksien alijoukon, joita voidaan tehdä Dataverse -ohjelmointirajapinnalla. Ohjelmointirajapinnan muoto on mahdollisimman samankaltainen oppimiskäyrän pienentämiseksi.

Muistiinpano

Verkko-ohjelmointirajapinnan toiminnot ovat merkkikokoriippuvaisia.

Power Pagesissa käytettävissä olevat verkko-ohjelmointirajapinnan toiminnot

Verkko-ohjelmointirajan sivuston asetukset

Tärkeä

Yleismerkkiarvon (*) tuki sivustoasetuksessa Webapi/<table-name>/fields on vanhentunut.

Korvaa * pilkuilla erotetulla luettelolla, joka sisältää sivustosi edellyttämät sarakkeet. Power Pages WWW-ohjelmointirajapinnan pyynnöt taulukoille, jotka on määritetty käyttäen *, epäonnistuvat, kunnes määrität eksplisiittiset sarakkeiden nimet.

Jos haluat ottaa portaalien verkko-ohjelmointirajapinnan käyttöön sivustossa, määritä kullekin näytettävälle taulukolle sivustoasetukset. Voit määrittää WWW-ohjelmointirajapinnan käytettävissä olevat sarakkeet luettelemalla ne sivuston asetuksissa, Dataverse-järjestelmänäkymän avulla tai yhdistämällä molemmat menetelmät.

Muistiinpano

Käytä taulukon loogista nimeä näille asetuksille (esimerkiksi account).

Sivuston asetuksen nimi Description
Webapi/<table-name>/enabled Ottaa kohteen <table name> verkko-ohjelmointirajapinnan käyttöön tai poistaa sen käytöstä.
Oletusarvo:False
Kelvolliset arvot:True, False
Webapi/<table-name>/fields Määrittää pilkuin eroteltujen sarakkeiden loogisten nimien luettelon, joka on käytettävissä Web API:n kautta. Esimerkki: name,accountnumber,telephone1. Tämä asetus vaaditaan, ellei kohteen Webapi/<table-name>/UseFieldsFromView arvoksi ole määritetty True ja määritetty järjestelmänäkymä sisällä vähintään yhtä kelvollista saraketta. Yleismerkkiarvo (*) on vanhentunut.
Webapi/<table-name>/UseFieldsFromView Kun asetuksena on True, Dataverse-järjestelmänäkymän Power Pages Web API Columns sarakkeet ovat käytettävissä Web API:n kautta. Oletus:False. Kelvolliset arvot:TrueFalse . Jos Webapi/<table-name>/fields on myös määritetty, molempien lähteiden sarakkeet yhdistetään.
Webapi/error/innererror InnerError otetaan käyttöön tai poistetaan käytöstä.
Oletusarvo:False
Kelvolliset arvot:True, False

Voit esimerkiksi näyttää Web API:n Tapaus-taulukolle, jossa todennetut käyttäjät voivat luoda, päivittää ja poistaa tietueita tälle entiteetille, käyttämällä seuraavassa taulukossa näkyviä sivuston asetuksia.

Sivuston asetuksen nimi Sivuston asetuksen arvo
Webapi/incident/enabled true
Webapi/incident/fields attr1, attr2, attr3

Web API -rajapinnan sarakkeiden määrittäminen järjestelmänäkymän avulla

Järjestelmänäkymän avulla tekijät voivat hallita portaalin verkko-ohjelmointirajapinnan avulla käytettävissä olevia sarakkeita ilman pilkuilla erotetun luettelon ylläpitoa sivustoasetuksessa.

  1. Avaa Power Pages Design Studiossa Data-työtila.
  2. Valitse taulukko, valitse Näkymät-välilehti ja sitten luo tai muokkaa julkista järjestelmänäkymää.
  3. Anna näkymälle nimeksi Power Pages Web API Columns.
  4. Lisää sivustosi tarvitsemat sarakkeet näkymään ja tallenna ja julkaise näkymä.
  5. Luo portaalin hallintasovelluksessa Webapi/<table-name>/UseFieldsFromView sivuston asetus sivustolle ja määritä sen arvoksi True.
  6. Vahvista, että Webapi/<table-name>/enabled-arvo on True.

Muistiinpano

  • Vain ensisijaisen taulukon sarakkeet, jotka näkyvät näkymässä, sisällytetään. Liittyvien taulukoiden sarakkeita ei sisällytetä. Sarakkeita, joita käytetään vain suodatukseen tai lajitteluun, ei sisällytetä, elleivät ne ole myös näkyvissä näkymässä.
  • Käytä hakusarakkeissa vastaavaa OData-hakuominaisuutta Web API -pyynnöissä. Ominaisuuden nimi käyttää muotoa _<column-logical-name>_value. Esimerkiksi hakusarake primarycontactid palautetaan muodossa _primarycontactid_value.
  • Järjestelmänäkymään tehdyt muutokset voivat olla verkko-ohjelmointirajapinnan käytössä viisi minuuttia käyttöönoton jälkeen.

Jos sekä Webapi/<table-name>/fields että Webapi/<table-name>/UseFieldsFromView on määritetty, verkko-ohjelmointirajapinta yhdistää kohdassa Webapi/<table-name>/fields luetellut sarakkeet kyseisen taulukon Power Pages -verkko-ohjelmointirajapinnan sarakkeet -järjestelmänäkymän kelvollisiin sarakkeisiin.

Tärkeä

  • Sivuston Webapi/<table-name>/UseFieldsFromView asetus on käytettävissä Power Pages sivuston versiossa 9.8.8.x ja sitä uudemmissa versioissa.
  • Yleismerkkiarvon (*) tuki kohteessa Webapi/<table-name>/fields on vanhentunut. Käytä eksplisiittisiä sarakkeiden nimiä, Power Pages Web API Columns -järjestelmänäkymää tai molempia.

Portaalin Web API:n suojaus

Tietuepohjainen suojaus voidaan määrittää portaalin yksittäisiin tietueisiin käyttämällä taulukko-oikeuksia. Portaalin verkko-ohjelmointirajapinta käyttää taulukon (entiteettien) tietueita ja noudattaa taulukkoon liittyviä käyttöoikeuksia, jotka on annettu käyttäjille liittyvän verkkoroolin kautta.

Voit määrittää sarakeoikeudet määrittämään lisäoikeuksia yksittäisiin taulukon sarakkeisiin portaalin verkko-ohjelmointirajapinnan avulla.

Portaalin Web API -pyyntöjen todentaminen

Todennuskoodia ei tarvitse sisällyttää, sillä sovellusistunto hallitsee todennusta ja valtuutusta. Kaikissa verkko-ohjelmointirajapintakutsuissa on oltava CSRF (jaetun julkaisuoikeuspyynnön väärentäminen) -tunnus.

EntitySetName-nimen käyttö

Kun viittaat Dataverse-taulukoihin käyttämällä koodissasi portaalin WWW-ohjelmointirajapintaa, käytä EntitySetName-nimeä. Jos esimerkiksi käytetään tilitaulukkoa, koodin syntaksi käyttää tilien EntitySetName-arvoa /_api/accounts().

Muistiinpano

Käytä sivustoasetusten loogista nimeä näille asetuksille (esimerkiksi tili).

Voit selvittää tiettyjen taulukoiden EntitySetName-arvon seuraavasti:

  1. Siirry kohtaan https://make.powerapps.com

  2. Valitse Dataverse-välilehti sivupaneelista ja valitse taulukko.

  3. Valitse ... (Komennot-vaihtoehto) ja kopioi taulukon EntitySetName-arvo leikepöydälle valitsemalla Lisäasetukset, Työkalut ja Kopioi joukon nimi.

    Dataverse-taulukon EntitySetName-nimen paikantaminen.

Tietosuojalait ja -määräykset

Kaikki pyynnön otsikot käyttävät yhteyshenkilön tunnusta seurantaa varten. Anonyymin käyttäjän arvo on null.

Jos valvontalokiin kirjaus on otettu käyttöön, käyttäjä näkee kaikki valvontatapahtumat Office 365:n valvontalokissa.

Näyttökuva Office 365 -seurantalokista.

Lisätietoja:
Toimien lokiin kirjaamisen ottaminen käyttöön ja sen käyttäminen
Valvontalokin tietueiden vieminen, määrittäminen ja näyttäminen

Määritystaulukot, joita ei tueta

Portaalin verkko-ohjelmointirajapintaa ei voi käyttää seuraavissa määritystaulukoissa:

adx_contentaccesslevel

adx_contentsnippet

adx_entityform

adx_entityformmetadata

adx_entitylist

adx_entitypermission

adx_entitypermission_webrole

adx_externalidentity

adx_pagealert

adx_pagenotification

adx_pagetag

adx_pagetag_webpage

adx_pagetemplate

adx_portallanguage

adx_publishingstate

adx_publishingstatetransitionrule

adx_publishingstatetransitionrule_webrole

adx_redirect

adx_setting

adx_shortcut

adx_sitemarker

adx_sitesetting

adx_urlhistory

adx_webfile

adx_webfilelog

adx_webform

adx_webformmetadata

adx_webformsession

adx_webformstep

adx_weblink

adx_weblinkset

adx_webnotificationentity

adx_webnotificationurl

adx_webpage

adx_webpage_tag

adx_webpageaccesscontrolrule

adx_webpageaccesscontrolrule_webrole

adx_webpagehistory

adx_webpagelog

adx_webrole_systemuser

adx_website

adx_website_list

adx_website_sponsor

adx_websiteaccess

adx_websiteaccess_webrole

adx_websitebinding

adx_websitelanguage

adx_webtemplate

Limitations

Mukautetut toimintotaulukot perivät perussarakkeet (kuten subject, description, activityidja createdon) taulukosta activitypointer . Kun mukautetun aktiviteettitaulukon verkko-ohjelmointirajapinnan sarakkeita määritetään käyttämällä kohdetta Webapi/<table-name>/fields, Power Pages -verkko-ohjelmointirajapinnan sarakkeet -järjestelmänäkymää tai kohdetta $select, sisällytä vähintään yksi kyseisessä taulukossa suoraan määritetty sarake, ei vain perittyjä sarakkeita.

Jos määrität vain perityt activitypointer sarakkeet, WWW-ohjelmointirajapinta ei tunnista taulukkokohtaista sarakevalintaa. Tämän seurauksena se käsittelee pyyntöä yleismerkkinä (*) ja palauttaa seuraavan virheen, vaikka määrittäisit kenttiä eksplisiittisesti: Attribute All Columns ei ole käytössä Web API:ssa.

Suositus: Sisällytä yhdessä perittyjen sarakkeiden kanssa vähintään yksi sarake, joka on määritetty suoraan mukautetussa aktiviteettitaulukossa, kuten Portaalin kommentit/adx_portalcomment.

Tunnetut ongelmat

Käyttäjät saavat CDS-virheen, jos he käynnistävät GET-verkko-ohjelmointirajapyynnön taulukoille, joilla on useita tasoja yksi moneen- tai monta moneen-taulukon käyttöoikeuksia, kun Ylätaso-, Yhteyshenkilö- tai Asiakas-laajuudet lisäävät kyselyyn lisää ehtoja.

Voit korjata tämän ongelman käyttämällä FetchXML:ää OData-kyselyssä.

Seuraava vaihe

Tietojen kysely portaalien Web API:n avulla