Встраивание внешних ресурсов в ArcGIS

Этот шаблон основан на основном пользовательском опыте в приложении ArcGIS, таком как ArcGIS Experience Builder, ArcGIS Dashboard, других настраиваемых веб-приложениях или ArcGIS Pro. Желаемая интеграция встраивает ресурсы из другой системы в интерфейс ArcGIS по одному из нескольких распространённых шаблонов:

  • Полное встраивание <iframe>, которое поддерживается в ArcGIS Hub и ArcGIS Enterprise Sites, в ArcGIS Experience Builder через виджет Встроить, а также в ArcGIS Dashboards как встроенные ресуры.

  • Встроенные HTML-ресурсы, отображаемые во всплывающем окне, например, встроенное изображение. Это ограничено поддерживаемыми HTML-тегами и может использоваться для отображения изображения из удалённой системы или ссылки на удалённое приложение или конечную точку.

Шаблоны интеграции в ArcGIS

Различные настраиваемые приложения ArcGIS Enterprise или ArcGIS Online могут встраивать ресурсы через определённые методы <iframe>. Любое приложение, использующее веб-карту, может работать со встроенным изображением, настроенным через всплывающее окно, включая ArcGIS Pro и ArcGIS Maps SDK.

Возможности ArcGIS Online ArcGIS Enterprise ArcGIS Location Platform ArcGIS Pro
Встраивание внешних ресурсов в ArcGIS Н/Д Н/Д

Полная поддержка Частичная поддержка


Использование параметров URL

Многие внешние веб-приложения поддерживают при загрузке набор настраиваемых свойств, определяемых через параметры URL, например https://myapp.domain.com/showdocument/docId=BND12 (Отобразить документ с идентификатором BND12). Используя этот шаблон интеграции, обычно динамически устанавливают эти параметры URL (контролируя, как будет загружаться приложение iframe), используя свойства родительского или бизнес-системного приложения. Например, если пользователь просматривает запись с идентификатором BND12 в приложении ArcGIS, iframe можно определить так, чтобы использовать URL, который загружает удалённое приложение из внешней системы с уже видимыми интересующими данными или заранее загруженной формой или интерфейсом.

Рекомендации и сложности при использовании <iframe>

Исторически iframe были популярной технологией, но также создавали множество проблем безопасности. Это привело к появлению различных браузерных ограничений, наложенных на iframe, что может ограничивать функциональность или удобство использования между системами. К основным сложностям относятся:

  • Единый вход — это сложно. Стандарты браузера часто блокируют повторное использование существующих cookie сеанса в <iframe>, если домен <iframe> не совпадает с доменом родительского ресурса. Это означает, что пользователю часто необходимо аутентифицироваться в системе ArcGIS, встроенной в <iframe>, что потребует взаимодействия с входом. Если и родительский элемент фрейма, и сам фрейм аутентифицированы одним и тем же поставщиком идентификации, пользователи могут ожидать единый опыт входа и быть недовольны требованием второго входа. Некоторые поставщики корпоративных идентификаторов могут также заблокировать использование собственного диалога входа в iframe, поэтому могут потребоваться другие подходы, например тщательно продуманные заголовки политики безопасности ресурсов.
  • Для наилучшего решения этой проблемы используйте один и тот же домен (например, .domain.com) как для родительского сайта, так и для iframe, используйте одного и того же провайдера входа и настройте автоматическое перенаправление пользователей для входа при необходимости.
  • Скачивание или загрузка файлов может быть заблокирована. Безопасность браузера может блокировать загрузку файлов из iframe, при этом ссылка или кнопка загрузки во встроенном приложении не сообщает об error или сбое, а просто не сможет скачать файл, например, экспорт из таблицы функций. Такие проблемы обычно отображаются в JavaScript-консоли браузера.

  • Размер экрана может негативно влиять на пользовательский интерфейс. Iframe часто задаются с фиксированным размером в пикселях, и приложения, которые будут встроены, должны быть разработаны под этот ожидаемый размер вида. Если родительское приложение может интеллектуально масштабировать iframe под разрешение экрана пользователя, пользователи с большими экранами получат адаптивный интерфейс, но iframe фиксированного размера приведёт к появлению маленького встроенного окна, что может ухудшить пользовательский опыт. Встроенные приложения должны быть разработаны так, чтобы все основные элементы интерфейса и взаимодействия помещались в предоставленной области экрана.

  • Взаимодействие между iframe и родительским окном обычно ограничено. Хотя некоторые шаблоны <iframe> поддерживают связь между родительским окном и <iframe> через протоколы или шаблоны, такие как postMessage, большинство приложений ArcGIS не предоставляют такой возможности, поэтому действия в приложении iframe не влияют на родительское окно, или наоборот.
Top