Översikt över webb-API-portaler
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, uppdatera en kontakt utan att använda ett formulär eller flerstegsformulär med hjälp av portalerna webb-API.
Viktigt!
- Din Power Pages webbplats version måste vara 9.3.3.x eller senare för att den här funktionen ska fungera.
- 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. Använda portalernas 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. Konfigurera data för tabellmetadata eller portalkonfigurationstabel, till exempel konfigurera portaltabeller som adx_contentsnippet, adx_entityform eller adx_entitylist stöds inte med webb-API för portaler. En fullständig lista finns i konfigurationstabeller som inte stöds, längre fram i ämne.
- Portalernas webb-API har nytta av cachelagring på serversidan, så efterföljande anrop till webb-API:et är snabbare än de första anropen. Observera att om du avmarkerar portalens servercacheminne blir prestanda försämrade.
- Portalers webb-API-åtgärder kräver en Power Pages-licens. Webb-API-anrop som görs av anonyma användare räknas exempelvis i anonyma användarkapacitet. Webb-API-anrop från autentiserade användare (interna eller externa) räknas inte in i sidvyer, men kräver tillämpliga licenser med autentiserad användarkapacitet. Mer information: Vanliga frågor om Power Pages licenser
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 har hållits så likartat 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
Kommentar
Att anropa åtgärder och funktioner som använder portalens webb-API stöds inte.
Webbplatsinställningar för webb-API
Du måste aktivera webbplatsinställningen för att kunna aktivera webb-API:t för portalen. Du kan också konfigurera webb-API på fältnivå som bestämmer vilka tabellfält som kan eller inte kan ändras med portalens Webb-API.
Kommentar
Använd tabellens logiska namn för dessa inställningar (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 den kommaseparerade listan över attribut som kan ändras med webb-API:t. Möjliga värden: - Alla attribut: * - Specifika attribut: attr1,attr2,attr3 Obs! Värdet måste antingen vara en asterisk (*) eller en kommaavgränsad lista med fältnamn. Viktigt! Det här är en obligatorisk webbplatsinställning. När den här inställningen saknas visas felmeddelandet "Inga fält har definierats för den här entiteten". |
Webapi/error/innererror | Aktiverar eller inaktiverar InnerError. Standard: False Giltiga värden: True , False |
Webapi/<table name>/disableodatafilter | Aktiverar eller inaktiverar OData-filtret. Standard: False Giltiga värden: True , False Se kända problem för mer information. Webbplatsinställningen är tillgänglig i portalversion 9.4.10.74 eller senare. |
Kommentar
Webbplatsinställningarna måste anges som aktiva för att ändringarna ska börja gälla.
För att visa webb-API:t för ärendetabellen där autentiserade användare kan utföra åtgärder för att skapa, uppdatera och ta bort entiteten visas webbplatsinställningarna i följande tabell.
Webbplatsinställningsnamn | Värde för webbplatsinställning |
---|---|
Webapi/incident/enabled | sant |
Webapi/incident/fields | attr1, attr2, attr3 |
Säkerhet med webb-API för portaler
Du kan konfigurera postbaserad säkerhet för enskilda poster i portaler med hjälp av tabellbehörigheter. Portalers webb-API ger åtkomst till tabellposter (entitetsposter) och följer tabellbehörigheterna som ges till användare via den associerade webbrollen.
Du kan konfigurera kolumnbehörigheter för att ytterligare definiera privilegier för enskilda kolumner i en tabell med hjälp av portalwebb-API.
Autentisering av portaler för webb-API-begäranden
Du behöver inte ha med en autentiseringskod eftersom autentisering och auktorisering hanteras av programsessionen. Alla webb-API-anrop måste innehålla ett token för förfalskning av begäran mellan webbplatser.
Använda EntitySetName
När du refererar till Dataverse som använder portalernas webb-API i din kod måste du använda EntitySetName, till exempel för att komma åt tabell konto kommer kodens syntax att använda EntitySetName of konton; /_api/accounts()
.
Kommentar
Använd tabellens logiska namn för webbplatsinställningar (till exempel konto).
Du kan fastställa EntitySetName för specifika tabeller genom att följa stegen nedan.
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 uppsättningsnamn för att kopiera EntitySetName i tabellen kopieras till Urklipp.
Sekretesslagar och regler
Alla begäransrubriker får ett kontakt-ID som skickas för granskningssyften. För en anonym användare skickas detta som 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 spårningsloggen
Konfigurationstabell som inte stöds
Webb-API för portaler kan inte användas 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
Kända problem
Användare kommer att få ett CDS-fel om de anropar en GET
Web API-begäran för tabeller som har flera nivåer av 1 till många eller många till mångatabellbehörigheter när omfattningar för Överordnad, Kontakt eller Konto lägger till ytterligare villkor i frågan.
För att lösa det här problemet är den rekommenderade lösningen att använda FetchXML i OData-frågan.
Du kan också ställa in webbplatsinställningen Webapi/<table name>/disableodatafilter till True
.
Viktigt!
Om webbplatsinställningen Webapi/<table name>/disableodatafilter till True
kan detta ledas till försämrad prestanda för GET
-anrop för webb-API.
Webbplatsinställningen är tillgänglig i portalversion 9.4.10.74 eller senare.
Gå vidare
Frågedata med webb-API för portaler