Споделяне чрез


Общ преглед на уеб API на портали

Бележка

В сила от 12 октомври 2022 г. „Портали на Power Apps“ става Power Pages. Повече информация: Microsoft Power Pages вече е общодостъпен (блог)
Скоро ще мигрираме и ще обединим документацията на „Портали на Power Apps“ с документацията на Power Pages.

Уеб API на порталите дава възможност за по-богато потребителско изживяване в страници на портали на Power Apps. Можете да използвате уеб API за извършване на операции по създаване, четене, актуализиране и изтриване във всички таблици на Microsoft Dataverse от страниците на портала. Например можете да създадете нов акаунт, да актуализирате контакт или да промените разрешенията за таблици за продукт чрез използване на уеб API на портали вместо приложението за управление на портала.

Бележка

Можете също така да използвате Web API на порталите в Power Pages. Повече информация: Какво представлява Power Pages

Важно

  • Вашата версия на портала трябва да бъде 9.3.3.x или по-висока, за да работи функцията.
  • Уеб API на порталите е създаден за създаване на богато потребителско изживяване в страници на портали. Той не е оптимизиран за услуги или интеграция на приложения на трети страни. Използване на уеб API на порталите за интегриране с други Power Apps портали сайтове също не се поддържа.
  • Операциите на уеб API на портали са ограничени до таблици, свързани с данни, например акаунти, контакти или персонализирани таблици. Конфигуриране на метаданни на таблица или данни за конфигурационната таблица на портала, например конфигуриране на таблици на портала като adx_contentsnippet, adx_entityform или adx_entitylist, не се поддържа с уеб API на портали. За пълен списък отидете на неподдържани конфигурационни таблици по-долу в тази тема.
  • Порталите Web API се възползват от кеширане от страна на сървъра и следователно следващите повиквания към уеб API са по-бързи от първоначалните. Обърнете внимание, че изчистването на кеша от страна сървъра за портал причинява временно влошаване на производителността.
  • Порталите Уеб API операции изискват лицензи за портали на Power Apps. Например повикванията на уеб API, направени от анонимни потребители, се отчитат в капацитета за преглед на страници. Обажданията за уеб API, направени от удостоверени потребители (вътрешни или външни), не се отчитат в показвания на страници, но изискват приложими лицензи. Повече информация: Често задавани въпроси за лицензиране на портали на Power Apps

Операции с уеб API

Уеб API на порталите предлага подмножество от възможности за Dataverse операции, които можете да направите, като използвате Dataverse API. Запазихме формата на API възможно най-сходен, за да намалим кривата на обучение.

Бележка

Операциите на уеб API са чувствителни към малки и големи букви.

Операции за уеб API, достъпни в портали

Бележка

Извикване на действия и функции с помощта на уеб API на порталите не се поддържа.

Настройки на сайта за Уеб API

Трябва да активирате настройката на сайта, за да активирате уеб API на порталите за вашия портал. Можете също така да конфигурирате Web API на ниво поле, което определя полетата на таблицата, които могат или не могат да бъдат модифицирани с Web API на порталите.

Бележка

Използвайте логическо име на таблицата за тези настройки (напр. акаунт).

Име на настройка на сайт Описание
Webapi/<table name>/enabled Активира или деактивира уеб API за <table name>.
По подразбиране: False
Валидни стойности: True, False
Webapi/<table name>/fields Определя списък с атрибути, разделени със запетая, които могат да бъдат модифицирани с уеб API.
Възможни стойности:
- Всички атрибути: *
- Специфични атрибути: attr1,attr2,attr3
Забележка: Стойността трябва да бъде или звездичка (*) или списък с имена на полета, разделен със запетая.
Важно: Това е задължителна настройка на сайта. Когато тази настройка липсва, ще видите грешката „Няма дефинирани полета за този обект“.
Webapi/error/innererror Активира или дезактивира InnerError.
По подразбиране: False
Валидни стойности: True, False
Webapi/<table name>/disableodatafilter Активира или дезактивира филтъра на OData.
По подразбиране: False
Допустими стойности: True, False Вижте известни проблеми за повече информация. Настройката на сайта е достъпна в портална версия 9.4.10.74 или по-късно.

Бележка

Настройките на сайта трябва да бъдат зададени на Активни, за да влязат в сила промените.

Например, за да покажете уеб API за таблицата на случай, където удостоверените потребители имат право да извършват операции по създаване, актуализиране и изтриване на този обект, настройките на сайта са показани в следващата таблица.

Име на настройка на сайт Стойност на настройка на сайт
Webapi/incident/enabled true
Webapi/incident/fields attr1, attr2, attr3

Сигурност с уеб API на порталите

Можете да конфигурирате защитата, базирана на записи, на отделни записи в портали, като използвате разрешения за таблици. Уеб API на портали осъществява достъп до записи на таблици (обект) и следва разрешенията за таблици, дадени на потребителите чрез свързаната уеб роля.

Можете да конфигурирате разрешения за колони за допълнително дефиниране на привилегии за отделни колони в рамките на таблица, докато използвате уеб API на порталите.

Защита на уеб API на портали.

Заявки за уеб API за удостоверяване на портали

Не е необходимо да включвате код за удостоверяване, тъй като удостоверяването и упълномощаването се управляват от сесията на приложението. Всички извиквания на уеб API трябва да включват маркер за фалшифициране на заявки между сайтове (CSRF).

Използване на EntitySetName

Когато се обръщате към таблици на Dataverse, използвайки уеб API на порталите, в кода си, трябва да използвате EntitySetName, например за достъп до таблицата със акаунти синтаксисът на кода ще използва EntitySetName на акаунти; /_api/accounts().

Бележка

Използвайте логическото име на таблицата за настройките на сайта (например акаунт).

Можете да определите EntitySetName на конкретни таблици, като следвате тези стъпки:

  1. Преминаване към https://make.powerapps.com

  2. Изберете раздела Dataverse от страничния панел и изберете таблицата.

  3. Изберете ... (Опция за команди) и след това изберете Разширено, Инструменти и Копирайте името на комплекта да копирате EntitySetName от таблицата към вашия клипборд.

    Как да намерите EntitySetName на таблица на Dataverse.

Общ регламент относно защитата на данните (GDPR)

Всички заглавки на заявки ще имат идентификационен номер на контакт, предаден с цел одит. За анонимен потребител това ще бъде предадено като null.

Ако регистрирането на одит е активирано, потребителят може да види всички събития на одита в дневник на одита на Office 365.

Регистрационен файл от проверка на Office 365.

Допълнителна информация:
Активиране и използване на регистриране на дейност
Експортирайте, конфигурирайте и преглеждайте записите на дневника за одит

Неподдържани таблици за конфигуриране

Уеб API на портали не може да се използва за следните конфигурационни таблици:

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

Познати проблеми

Потребителите ще получат CDS грешка, ако извикат GET Заявка за уеб API за таблици, които имат множество нива на 1 към много или много към много разрешения за таблица с родител определен обхват.

За да разрешите този проблем, препоръчителното решение е да използвате FetchXML в заявката OData.

Друга възможност е да зададете настройката на сайта Webapi/<table name>/disableodatafilter на True.

Важно

Промяна на настройките на сайта Webapi/<table name>/disableodatafilter на True може да доведе до по-бавна производителност за Web API GET обаждания.

Настройката на сайта е достъпна в портална версия 9.4.10.74 или по-късно.

Следваща стъпка

Заявка за данни с помощта на портален уеб API

Вижте също

Съставяне на HTTP заявки и обработване на грешки
Операции за записване, актуализиране и изтриване на портали чрез Web API
Учебник: Използване на портала Web API

Бележка

Можете ли да ни споделите повече за езиковите си предпочитания за документацията? Попълнете кратко проучване. (имайте предвид, че това проучване е на английски език)

Проучването ще отнеме около седем минути. Не се събират лични данни (декларация за поверителност).