Огляд 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, зроблені анонімними користувачами, враховуються в рахунок виробничої спроможності щодо анонімних користувачів. Виклики веб-API, здійснені автентифікованими користувачами (внутрішніми або зовнішніми), не враховуються для переглядів сторінок, але вимагають відповідних автентифікованих ліцензій на ємність користувача. Додаткові відомості: Запитання й відповіді про ліцензування Power Pages
Операції API веб-служб
API веб-служб порталів пропонує сукупність можливостей для операцій Dataverse, які можна виконати за допомогою API Dataverse. Ми зберегли формат API максимально схожим, щоб скоротити криву навчання.
Нотатка
В операціях API веб-служб враховується регістр.
Операції API веб-служб, доступні для Power Pages
- Читання записів з таблиці
- Створення запису в таблиці
- Оновлення та видалення записів у таблиці
- Зв’язування та роз’єднання таблиць
Параметри сайту для API веб-служб
Потрібно ввімкнути параметр сайту, щоб увімкнути API веб-служб порталів для вашого порталу. Також можна налаштувати API веб-служб на рівні поля, що визначає поля таблиці, які можна чи не можна змінити за допомогою API веб-служб порталів.
Нотатка
Використовуйте логічне ім’я таблиці для цих параметрів (наприклад, бізнес-партнер).
Назва параметра сайту | Опис |
---|---|
Webapi/<ім’я> столу/увімкнено | Увімкнення або вимкнення API веб-служб для таблиці <ім'я таблиці>. За промовчанням: False Допустимі значення: True , False |
Webapi/<ім’я> таблиці/поля | Визначення розділеного комами списку атрибутів, які можна змінити за допомогою API веб-служб. Можливі значення: - Всі атрибути: * - Специфічні атрибути: attr1,attr2,attr3 Примітка: Значенням має бути зірочка (*) або список імен полів, відокремлених комами. Важливо: це налаштування є обов’язковим для налаштування. Якщо цей параметр відсутній, з’являється повідомлення про помилку "Для цієї сутності не визначено полів". |
Webapi/error/innererror | Увімкнення або вимкнення InnerError. За промовчанням: False Допустимі значення: True , False |
Webapi/<ім’я> таблиці/disableodatafilter | Увімкнення чи вимкнення фільтра OData. За промовчанням: False Допустимі значення: True , False Дивіться відомі проблеми для отримання додаткової інформації. Параметр сайту доступний на порталі версії 9.4.10.74 або пізнішої. |
Нотатка
Параметри сайту повинні бути установлені як Активні, щоб зміни були застосовані.
Наприклад, щоб показати Web API для таблиці «Інцидент», де автентифіковані користувачі можуть створювати, оновлювати та видаляти операції з цією сутністю, параметри сайту перелічено в наведеній нижче таблиці.
Назва параметра сайту | Значення параметра сайту |
---|---|
Webapi/інцидент/увімкнено | істина |
Webapi/incident/fields | attr1, attr2, attr3 |
Безпека за допомогою API веб-служб порталів
Настроювати безпеку записів для окремих записів на порталах можна, використовуючи дозволи для таблиць. API веб-служб порталів отримує доступ до записів таблиць (сутностей) і стежить за дозволами на доступ до таблиць, наданим користувачам за допомогою пов’язаної веб-ролі.
Під час використання API веб-служб порталів можна налаштувати дозволи для стовпців, щоб додатково визначити права, пов’язані з окремими стовпцями в таблиці.
Автентифікація запитів API веб-служб порталів
Вам не потрібно вводити код автентифікації, оскільки сеанс програми керує автентифікацією та авторизацією. Усі виклики API веб-служб повинні включати маркер підробки міжсайтових запитів (CSRF).
Використання EntitySetName
При зверненні до Dataverse таблиць за допомогою порталу Web 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/<імені> таблиці/фільтраTrue
відключених даних може призвести до зниження продуктивності викликів веб-API GET
.
Параметр сайту доступний на порталі версії 9.4.10.74 або пізнішої.
Наступний крок
Запит даних за допомогою порталів Web API