Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Portalernas webb-API ger en bättre användarupplevelse i Power Pages-webbplatser. Du kan använda webb-API för att skapa, läsa, uppdatera och ta bort åtgärder i alla Microsoft Dataverse-tabeller från dina webbsidor. Du kan till exempel skapa ett nytt konto eller uppdatera en kontakt utan att använda ett formulär eller flerstegsformulär med hjälp av portalens webb-API.
Webb-API:t använder routen /_api (till exempel https://yoursite.powerappsportals.com/_api/accounts) och följer ett RESTful mönster som liknar Dataverse Web API.
Viktigt!
- Webb-API för portaler är byggd för att skapa en rikare användarupplevelse i portalsidorna. Det är inte optimerat för tredjepartstjänster eller programintegrering. Att använda portalens webb-API för att integrera med andra Power Pages-webbplatser stöds inte.
- Webb API-åtgärder för portaler är begränsade till tabeller som är relaterade till data, till exempel konton, kontakter eller dina anpassade tabeller. Konfiguration av tabellmetadata eller portalkonfigurationstabelldata – till exempel att konfigurera portaltabeller som adx_contentsnippet, adx_entityform eller adx_entitylist – stöds inte med hjälp av Portals Web API. En fullständig lista finns i konfigurationstabeller som inte stöds senare i den här artikeln.
- Portalernas webb-API har nytta av cachelagring på serversidan, så efterföljande anrop till webb-API:et är snabbare än de första anropen. Rensning av portalens cache på serversidan orsakar en tillfällig prestandaförsämring.
- Portalers webb-API-åtgärder kräver en Power Pages-licens. Webb-API-anrop som görs av anonyma användare räknas till exempel mot den anonyma användarkapaciteten. Webb-API-anrop som görs av autentiserade användare (interna eller externa) räknas inte mot sidvisningar, men kräver tillämpliga kapacitetslicenser för autentiserade användare. Mer information finns i vanliga frågor och svar om Power Pages licensiering.
- Anropa åtgärder och funktioner med hjälp av portalens webb-API stöds inte.
Webb-API för åtgärder
Webb-API för portaler tillhandahåller en deluppsättning funktioner för Dataverse-åtgärder som du kan utföra med hjälp av API:t för Dataverse. API-formatet är så likt som möjligt för att minska inlärningskurvan.
Kommentar
Webb-API-åtgärder är skiftlägeskänsliga.
Webb-API-åtgärder som är tillgängliga i Power Pages
- Läsa poster från en tabell
- Skapa en post i en tabell
- Uppdatera och ta bort poster i en tabell
- Associera och avassociera tabeller
Webbplatsinställningar för webb-API
Viktigt!
Stöd för jokerteckenvärdet (*) i webbplatsinställningen Webapi/<table-name>/fields är utfasat.
Ersätt * med en kommaavgränsad lista över de kolumner som din webbplats kräver. Power Pages webb-API-begäranden för tabeller som konfigurerats med * misslyckas tills du konfigurerar explicita kolumnnamn.
Om du vill aktivera portalens webb-API för din webbplats konfigurerar du webbplatsinställningarna för varje tabell som du vill exponera. Du kan definiera de kolumner som är tillgängliga för webb-API:et genom att ange dem i en webbplatsinställning, med hjälp av en Dataverse-systemvy eller genom att kombinera båda metoderna.
Kommentar
Använd tabellens logiska namn för de här inställningarna (till exempel konto).
| Namn på webbplatsinställning | Beskrivning |
|---|---|
Webapi/<table-name>/enabled |
Aktiverar eller inaktiverar webb-API för <table name>. Standard: False Giltiga värden: True, False |
Webapi/<table-name>/fields |
Definierar en kommaavgränsad lista över kolumn logiska namn som är tillgängliga via webb-API:et. Till exempel name,accountnumber,telephone1. Den här inställningen krävs såvida inte Webapi/<table-name>/UseFieldsFromView har angetts till True och den konfigurerade systemvyn innehåller minst en giltig kolumn. Jokertecknets värde (*) är föråldrat. |
Webapi/<table-name>/UseFieldsFromView |
När det är inställt på Trueblir kolumner från en Dataverse-systemvy med namnet Power Pages webb-API-kolumner tillgängliga via webb-API:et.
Standard:False.
Giltiga värden:True, False. Om Webapi/<table-name>/fields också är konfigurerat kombineras kolumner från båda källorna. |
Webapi/error/innererror |
Aktiverar eller inaktiverar InnerError. Standard: False Giltiga värden: True, False |
Om du till exempel vill exponera webb-API:et för tabellen Ärende där autentiserade användare kan skapa, uppdatera och ta bort poster för den här entiteten använder du webbplatsinställningarna som visas i följande tabell.
| Namn på webbplatsinställning | Webbplatsinställningsvärde |
|---|---|
| Webapi/incident/aktiverat | sant |
| Webapi/incident/fields | attr1, attr2, attr3 |
Konfigurera webb-API-kolumner med hjälp av en systemvy
Med hjälp av en systemvy kan skaparna hantera de kolumner som är tillgängliga via portalens webb-API utan att underhålla en kommaavgränsad lista i en webbplatsinställning.
- Öppna Data-arbetsytan i Power Pages designstudio.
- Välj tabellen, välj fliken Vyer och skapa eller redigera sedan en offentlig systemvy.
- Namnge vyn Power Pages webb-API-kolumner.
- Lägg till de kolumner som webbplatsen behöver i vyn och spara och publicera sedan vyn.
- I portalhanteringsappen skapar du webbplatsinställningen
Webapi/<table-name>/UseFieldsFromViewför webbplatsen och anger dess värde tillTrue. - Bekräfta att
Webapi/<table-name>/enabledär inställd påTrue.
Kommentar
- Endast kolumner från den primära tabellen som visas i vyn ingår. Kolumner från relaterade tabeller ingår inte. Kolumner som endast används för filtrering eller sortering ingår inte om de inte också visas i vyn.
- För uppslagskolumner använder du motsvarande OData-uppslagsegenskap i webb-API-begäranden. Egenskapsnamnet använder formatet
_<column-logical-name>_value. Till exempel returneras uppslagskolumnenprimarycontactidsom_primarycontactid_value. - Det kan ta upp till fem minuter innan ändringar i systemvyn blir tillgängliga för webb-API:et.
Om både Webapi/<table-name>/fields och Webapi/<table-name>/UseFieldsFromView är konfigurerade kombinerar webb-API:et kolumnerna som anges i Webapi/<table-name>/fields med giltiga kolumner från systemvyn Power Pages web-API-kolumner för den tabellen.
Viktigt!
- Webbplatsinställningen
Webapi/<table-name>/UseFieldsFromViewär tillgänglig i Power Pages webbplatsversion 9.8.8.x och senare. - Stöd för jokerteckenvärdet (
*) iWebapi/<table-name>/fieldsär föråldrat. Använd explicita kolumnnamn, systemvyn Power Pages Web API Columns eller båda.
Säkerhet med portalens webb-API
Du kan konfigurera postbaserad säkerhet för enskilda poster i portaler med hjälp av tabellbehörigheter. Portalens webb-API kommer åt tabellposter (entitet) och följer de tabellbehörigheter som ges till användare via den associerade webbrollen.
Du kan konfigurera kolumnbehörigheter för att ytterligare definiera behörigheter för enskilda kolumner i en tabell när du använder portalwebb-API:et.
Autentisering av portalen för webb-API-begäranden
Du behöver inte ha med någon autentiseringskod, detta eftersom programsessionen hanterar autentisering och auktorisering. Alla webb-API-anrop måste innehålla ett token för förfalskning av begäran mellan webbplatser.
Användning av EntitySetName
När du refererar till Dataverse-tabeller med hjälp av portalwebb-API:et i koden använder du EntitySetName. För att komma åt kontotabellen använder till exempel kodsyntaxen EntitySetName för konton. /_api/accounts().
Kommentar
Använd tabellens logiska namn för webbplatsinställningar (till exempel konto).
Följ dessa steg för att fastställa EntitySetName för specifika tabeller:
Gå till https://make.powerapps.com
Markera fliken Dataverse på sidopanelen och markera tabellen.
Välj alternativet ... (Kommandon) och välj sedan Avancerat, Verktyg och Kopiera namn på uppsättning för att kopiera tabellens EntitySetName till Urklipp.
Sekretesslagar och regler
Alla begärandehuvuden använder ett kontakt-ID för granskningsändamål. För en anonym användare är värdet null.
Om spårningsloggning har aktiverats kan en användare se alla spårningshändelser i spårningsloggen för Office 365.
Mer information:
Aktivera och använd loggning av aktiviteter
Exportera, konfigurera och visa poster i granskningsloggen
Konfigurationstabell som inte stöds
Du kan inte använda Portal Web API för följande konfigurationstabeller:
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
Anpassade aktivitetstabeller ärver baskolumner (till exempel subject, description, activityidoch createdon) från activitypointer tabellen. När du konfigurerar webb-API-kolumner för en anpassad aktivitetstabell med hjälp av Webapi/<table-name>/fields, systemvyn Power Pages web-API-kolumner eller $select, ska du inkludera minst en kolumn som definierats direkt i tabellen, inte bara ärvda kolumner.
Om du bara konfigurerar ärvda activitypointer kolumner kan webb-API:et inte identifiera en tabellspecifik kolumnmarkering. Det innebär att begäran behandlas som ett jokertecken (*) och returnerar följande fel, även när du uttryckligen konfigurerar fält: Attributet Alla kolumner är inte aktiverat för Webb-API.
Rekommendation: Inkludera minst en kolumn som definierats direkt i den anpassade aktivitetstabellen, till exempel Portal Comments/adx_portalcomment, tillsammans med ärvda kolumner.
Kända problem
Användare får ett CDS-fel om de anropar en GET webb-API-begäran för tabeller som har flera nivåer av en till många eller många till många tabellbehörigheter sedan omfånget Överordnad, Kontakt eller Konto lägger till fler villkor i frågan.
Lös problemet genom att använda FetchXML i OData-frågan.
Gå vidare
Frågedata med webb-API för portaler