Opis internetowego interfejsu API portali

Web API portali umożliwia bogatsze doświadczenie użytkownika na stronach witryn Power Pages. Za pomocą internetowego interfejsu API można wykonywać operacje tworzenia, odczytywania, aktualizowania i usuwania we wszystkich tabelach Microsoft Dataverse ze stron witryn. Na przykład można utworzyć nowe konto, zaktualizować kontakt, bez użycia formularza lub formularza wieloetapowego, używając interfejsu API sieci Web portali.

Ważne

  • Aby ta funkcja działała, trzeba mieć wersję witryny Power Pages 9.3.3.x lub nowszą.
  • Interfejs API sieci Web portali jest przeznaczony do tworzenia bogatego środowiska użytkownika na stronach portalu. Nie jest zoptymalizowany pod kątem integracji usług lub aplikacji innych firm. Używanie interfejsu API sieci Web portali do integrowania z innymi witrynami Power Pages nie jest obsługiwane.
  • Operacje interfejsu API sieci Web portali ograniczone są do tabel powiązanych z danymi — na przykład konta, kontakty lub tabele niestandardowe. Konfigurowanie metadanych tabeli lub danych tabeli konfiguracji portalu — na przykład konfigurowanie tabel portali, takich jak adx_contentsnippet, adx_entityform lub adx_entitylist — nie jest obsługiwane za pomocą interfejsu API sieci Web portali. Pełną listę można uzyskać w nieobsługiwanych tabelach konfiguracji, w dalszej części tego temat.
  • Interfejs API sieci Web portali korzysta z buforowania po stronie serwera, więc kolejne wywołania interfejsu API sieci Web są szybsze niż początkowe wywołania. Należy zauważyć, że wyczyszczenie pamięci podręcznej serwera portalu powoduje tymczasowe obniżenie wydajności.
  • Operacje interfejsu API sieci Web portali wymagają licencji witryn Power Pages. Na przykład wywołania interfejsu API sieci Web wprowadzone przez użytkowników anonimowych są liczone w celu osiągnięcia wydajności anonimowego użytkownika. Wywołania interfejsu API sieci Web wprowadzone przez użytkowników uwierzytelnionych (wewnętrznych lub zewnętrznych) nie są liczone w celu wyświetlenia stron, ale wymagają odpowiednich licencji pojemności upoważnionego użytkownika. Więcej informacji można znaleźć w: Często zadawane pytania dotyczące licencjonowania w Power Pages

Operacje interfejsu API sieci Web

Interfejs API sieci Web Portal udostępnia podzbiór funkcji przeznaczonych do wykonywania operacji Dataverse, które można wykonać przy użyciu interfejsu API Dataverse. W celu zredukowania krzywej szkoleniowej zachowamy tak zbliżony format interfejsu API.

Uwaga

W operacjach interfejsu API sieci Web jest znacząca wielkość liter.

Operacje interfejsu API sieci Web dostępne w Power Pages

Uwaga

Wywoływanie akcji i funkcji za pomocą interfejsu API sieci Web portali nie jest obsługiwane.

Ustawienia witryny dotyczące internetowego interfejsu API

Aby włączyć interfejs API sieci Web portali dla portalu, należy włączyć ustawienie witryny. Można również skonfigurować interfejs API sieci Web na poziomie pola, który określa pola tabeli, które można lub nie można modyfikować za pomocą internetowego interfejsu API portali.

Uwaga

Należy użyć nazwy logicznej w tabeli dla tych ustawień (na przykład klienta).

Nazwa ustawień witryny opis
Webapi/<table name>/enabled Włącza lub wyłącza interfejs Web API dla <table name>.
Domyślnie:False
Prawidłowe wartości:True, False
Webapi/<table name>/fields Definiuje listę atrybutów rozdzielanych przecinkami, które mogą być modyfikowane za pomocą internetowego interfejsu API.
Możliwe wartości:
- Wszystkie atrybuty:*
- Określone atrybuty:attr1,attr2,attr3
Uwaga: Ta wartość musi być gwiazdą (*) lub listą nazw pól rozdzielanych przecinkami.
Ważne: to jest obowiązkowe ustawienie witryny. W przypadku braku tego ustawienia pojawi się błąd „Nie zdefiniowano pól dla tej encji”.
Webapi/error/innererror Włącza lub wyłącza InnerError.
Domyślnie:False
Prawidłowe wartości:True, False
Webapi/<table name>/disableodatafilter Włącza lub wyłącza filtr OData.
Domyślnie:False
Prawidłowe wartości:True, False Zobacz znane problemy, by uzyskać więcej informacji. Ustawienie witryny jest dostępne w portalu w wersji 9.4.10.74 lub nowszej.

Uwaga

Aby zmiany odniosły skutek, ustawienia witryny muszą być ustawione na Aktywne.

Na przykład w celu udostępnienia interfejsu API sieci Web dla tabeli Sprawa, w której uwierzytelnieni użytkownicy mogą wykonywać operacje tworzenia, aktualizowania i usuwania dla tej encji, ustawienia witryny przedstawiono w następującej tabeli.

Nazwa ustawień witryny Wartość ustawienia witryny
Webapi/incident/enabled prawda
Webapi/incident/fields attr1, attr2, attr3

Zabezpieczenia przy użyciu interfejsu API sieci Web portali

Zabezpieczenia oparte na rekordach można konfigurować w portalach za pomocą uprawnień tabeli. Interfejs API sieci Web portali uzyskuje dostęp do rekordów tabeli (encji) i postępuje zgodnie z uprawnieniami do tabeli nadawanych użytkownikom za pośrednictwem skojarzonej roli sieci Web.

Podczas korzystania z interfejsu API sieci Web portali można skonfigurować uprawnienia kolumn w celu dalszego definiowania uprawnień do poszczególnych kolumn w tabeli.

Uwierzytelnianie żądań interfejsu API sieci Web portali

Nie trzeba dołączać kodu uwierzytelniającego, ponieważ uwierzytelnianie i autoryzacja są zarządzane przez sesję aplikacji. Wszystkie wywołania usługi Web API muszą zawierać token podrabiania żądania między witrynami (CSRF).

Używanie EntitySetName

Odwołując się do tabel Dataverse przy użyciu internetowego interfejsu API portali w kodzie, musisz użyć EntitySetName, na przykład, aby uzyskać dostęp do tabeli kont, składnia kodu będzie używać EntitySetName kont; /_api/accounts().

Uwaga

Należy użyć nazwy logicznej w tabeli dla tych ustawień witryny (na przykład klienta).

Nazwę EntitySetName określonych tabel można określić, wykonać następujące kroki:

  1. Przejdź do usługi https://make.powerapps.com

  2. Wybierz kartę Dataverse z panelu bocznego i wybierz tabelę.

  3. Wybierz opcję ... (opcja Polecenia), a następnie wybierz nazwę zestawu Zaawansowane, Narzędzia i Kopiuj ustawioną nazwę, aby skopiować nazwę EntitySetName tabeli do schowka.

    Jak znaleźć nazwę EntitySetName tabeli Dataverse.

Prawa i przepisy dotyczące prywatności

Wszystkie nagłówki żądań będą miały identyfikator kontaktu przekazany do celów inspekcji. W przypadku użytkownika anonimowego zostanie ono przekazane jako null.

Jeśli włączone jest rejestrowanie inspekcji, użytkownik może zobaczyć wszystkie zdarzenia inspekcji w dzienniku inspekcji Office 365.

Dziennik inspekcji Office 365.

Więcej informacji:
Włączanie funkcji Rejestrowanie działań i korzystanie z niej
Eksportowanie, Konfigurowanie i wyświetlanie rekordów dziennika inspekcji

Nieobsługiwane tabele konfiguracji

Interfejs API sieci Web portali nie może być używany w następujących tabelach konfiguracji:

adx_contentaccesslevel – poziom dostępu do zawartości

adx_contentsnippet – wstawka zawartości

adx_entityform – forma encji

adx_entityformmetadata – metadane formularza encji

adx_entitylist – lista encji

adx_entitypermission – uprawnienie encji

adx_entitypermission_webrole – przyzwolenie encji, rola na stronie

adx_externalidentity – tożsamość zewnętrzna

adx_pagealert – alert dot. strony

adx_pagenotification – powiadomienie dotyczące strony

adx_pagetag – etykieta strony

adx_pagetag_webpage – etykieta strony, strona internetowa

adx_pagetemplate – szablon strony

adx_portallanguage – język portalu

adx_publishingstate – stan publikowania

adx_publishingstatetransitionrule – reguła przejścia stanu publikowania

adx_publishingstatetransitionrule_webrole – reguła przejścia stanu publikowania, rola witryny

adx_redirect – przekieruj do

adx_settings – ustawienia zawartości

adx_shortcut – skrót

adx_sitemarker – znaczniki witryn

adx_sitesetting – ustawienia strony

adx_urlhistory – historia URL

adx_webfile – plik strony

adx_webfile – plik strony dziennika

adx_webform – formularz strony

adx_webformmetadata – metadane formularza strony

adx_webformsession – sesja strony

adx_webformstep – formularz strony, krok

adx_weblink – link do strony

adx_weblink – zestaw linków do strony

adx_webnotificationentity – encja powiadomienia sieci Web

adx_webnotificationurl – powiadomienie URL

adx_webpage– witryna

adx_webpage_tag – etykieta witryny

adx_webpageaccesscontrolrule – reguła kontroli dostępu do stron internetowych

adx_webpageaccesscontrolrule_webrole – reguła kontroli dostępu do stron internetowych, rola internetowa

adx_webpagehistory – historia strony internetowej

adx_webpagelog – dziennik strony

adx_webrole_systemuser – rola na stronie, użytkownik systemowy

adx_website – witryna sieci web

adx_website – lista witryn sieci web

adx_website_sponsor – sponsor strony

adx_websiteaccess – dostęp do witryn internetowych

adx_websiteaccess – dostęp do witryn internetowych, rola na stronie

adx_websitebinding – powiązanie witryny internetowej

adx_websitelanguage – język witryny internetowej

adx_webtemplate – szablon strony

Znane problemy

Użytkownicy otrzymają błąd CDS, jeśli wywołają żądanie GET Web API dla tabel, które mają wiele poziomów 1 do wielu lub wiele do wieluuprawnienia do tabel, gdy zakresy Nadrzędny, Kontakt lub Konto dodają dodatkowe warunki do zapytania.

Aby rozwiązać ten problem, zalecane jest użycie pliku FetchXML w zapytaniu OData.

Alternatywnie ustaw ustawienie Webapi/<table name>/disableodatafilter na wartość True.

Ważne

Zmiana ustawienia Webapi/<table name/>disableodatafilter na True może spowodować, że działanie interfejsu API GET sieci Web będzie działać szybciej.

Ustawienie witryny jest dostępne w portalu w wersji 9.4.10.74 lub nowszej.

Następny krok

Wykonywanie zapytań o dane przy użyciu interfejsu API sieci Web portali

Zobacz też