Огляд API веб-служб порталів
API веб-служб порталів покращує можливості для користувачів на сайтах Power Pages. За допомогою API веб-служб можна створювати, зчитувати, оновлювати та видаляти операції в усіх таблицях Microsoft Dataverse на веб-сторінках. Наприклад, за допомогою веб-API порталів можна створити нового бізнес-партнера чи оновити контактну особу, не використовуючи форму або багатокрокову форму.
Важливо
- Для роботи цієї функції необхідно, щоб версія сайту Power Pages була 9.3.3.x або вище.
- API веб-служб порталів призначено для покращення можливостей для користувача на сторінках порталу. Цю функцію не оптимізовано для сторонніх служб або інтеграції програм. Також не підтримується використання Web API порталів для інтегрування з іншими сайтами Power Pages.
- Операції Web API порталів обмежуються таблицями, пов'язаними з даними, наприклад обліковими записами, контактними особами або настроюваними таблицями. Настроювання метаданих таблиці або даних таблиці конфігурації порталу, наприклад настроювання таблиць порталів, наприклад, adx_contentsnippet, adx_entityform або adx_entitylist, не підтримується у Web API порталів. Щоб отримати повний список, перейдіть до таблиць конфігурації, що не підтримуються, далі в цьому розділі.
- API веб-служб порталів отримує переваги завдяки кешуванню на стороні сервера, завдяки чому подальші виклики до API веб-служб здійснюються швидше, ніж початкові. Зверніть увагу, що очищення кешу порталу на стороні сервера викличе тимчасове зниження швидкодії порталу.
- Для операцій API веб-служб порталів потрібна ліцензія на Power Pages. Наприклад, виклики Web API, зроблені анонімними користувачами, враховуються в рахунок виробничої спроможності щодо анонімних користувачів. Виклики Web API, здійснені авторизованими користувачами (внутрішніми або зовнішніми) не враховуються в рахунок кількості переглядів сторінок, але для них вимагаються ліцензії на виробничу спроможність щодо авторизованих користувачів. Додаткові відомості: Запитання й відповіді про ліцензування Power Pages
Операції API веб-служб
API веб-служб порталів пропонує сукупність можливостей для операцій Dataverse, які можна виконати за допомогою API Dataverse. Ми зберегли формат API максимально подібним, щоб зменшити час навчання.
Нотатка
В операціях API веб-служб враховується регістр.
Операції API веб-служб, доступні для Power Pages
- Зчитування записів із таблиці
- Створення запису в таблиці
- Оновлення та видалення записів у таблиці
- Зв'язування та розірвання зв'язування таблиць
Параметри сайту для API веб-служб
Потрібно ввімкнути параметр сайту, щоб увімкнути API веб-служб порталів для вашого порталу. Також можна налаштувати API веб-служб на рівні поля, що визначає поля таблиці, які можна чи не можна змінити за допомогою API веб-служб порталів.
Нотатка
Використовуйте логічне ім’я таблиці для цих параметрів (наприклад, бізнес-партнер).
Назва параметра сайту | Опис |
---|---|
Webapi/<ім_я таблиці>/enabled | Увімкнення або вимкнення API веб-служб для таблиці <ім'я таблиці>. За замовчуванням: False Припустимі значення: True , False |
Webapi/<ім_я таблиці>/fields | Визначення розділеного комами списку атрибутів, які можна змінити за допомогою API веб-служб. Можливі значення: - Усі атрибути: * - Визначені атрибути: attr1,attr2,attr3 Примітка. Значення має бути у вигляді зірочки (*) або розділеного комами списку назв полів. Важливо. Це обов’язковий параметр для сайту. У разі відсутності цього параметра відобразиться помилка «Для цієї сутності не визначено полів». |
Webapi/error/innererror | Увімкнення або вимкнення InnerError. За замовчуванням: False Припустимі значення: True , False |
Webapi/<ім_я таблиці>/disableodatafilter | Увімкнення чи вимкнення фільтра OData. За замовчуванням: False Припустимі значення: True , False Див. відомі проблеми для отримання додаткових відомостей. Параметр сайту доступний на порталі версії 9.4.10.74 або пізнішої. |
Нотатка
Параметри сайту повинні бути установлені як Активні, щоб зміни були застосовані.
Наприклад, щоб показати Web API для таблиці «Інцидент», де автентифіковані користувачі можуть створювати, оновлювати та видаляти операції з цією сутністю, параметри сайту перелічено в наведеній нижче таблиці.
Назва параметра сайту | Значення параметра сайту |
---|---|
Webapi/incident/enabled | істина |
Webapi/incident/fields | attr1, attr2, attr3 |
Безпека за допомогою API веб-служб порталів
Настроювати безпеку записів для окремих записів на порталах можна, використовуючи дозволи для таблиць. API веб-служб порталів отримує доступ до записів таблиць (сутностей) і стежить за дозволами на доступ до таблиць, наданим користувачам за допомогою пов’язаної веб-ролі.
Під час використання API веб-служб порталів можна налаштувати дозволи для стовпців, щоб додатково визначити права, пов’язані з окремими стовпцями в таблиці.
Автентифікація запитів API веб-служб порталів
Не потрібно включати код автентифікації, оскільки автентифікація та авторизація керуються сеансом програми. Усі виклики API веб-служб повинні включати маркер підробки міжсайтових запитів (CSRF).
Використання EntitySetName
Якщо код містить посилання на таблиці Dataverse з використанням API веб-служб порталів, необхідно скористатися EntitySetName, наприклад для доступу до таблиці бізнес-партнера, у синтаксисі коду використовуватиметься EntitySetName бізнес-партнерів; /_api/accounts()
.
Нотатка
Логічне ім’я таблиці для параметрів сайту (наприклад, бізнес-партнер).
Ви можете визначити EntitySetName для певних таблиць, виконавши такі кроки:
Перейти до https://make.powerapps.com
Виберіть вкладку Dataverse на бічній панелі та виберіть таблицю.
Виберіть … (параметр «Команди»), а потім виберіть Додатково, Знаряддя та Копіювати ім’я набору, щоб скопіювати EntitySetName таблиці до буфера обміну.
Закони й нормативні вимоги щодо конфіденційності
Усі заголовки запиту отримають ідентифікатор контакту, що передається в цілях відстеження. Для анонімного користувача його буде передано як null
.
Якщо реєстрацію відстеження ввімкнено, користувач може переглянути всі події відстеження в журналі відстеження 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/<ім'я таблиці>/disableodatafilter значення True
.
Важливо
Якщо змінити значення параметра Webapi/<ім'я таблиці>/disableodatafilter на True
, це може призвести до більш повільної роботи викликів Web API GET
.
Параметр сайту доступний на порталі версії 9.4.10.74 або пізнішої.
Наступний крок
Запит даних за допомогою API веб-служб порталів