Skip To Content

Создание шаблонов веб-приложений

Для того, чтобы создать собственный шаблон веб-приложения, вы можете загрузить и изменить один из существующих шаблонов, обновить имеющееся веб-приложение для работы с ресурсами вашего портала или построить новое веб-приложение с помощью одного из интерфейсов программирования ArcGIS Web API. Независимо от того, какой способ вы выберите для создания собственного приложения, вы будете использовать параметры URL и карты. Вы можете работать с группами, если вы создаете групповой шаблон, и вам следует учитывать дополнительные требования для работы с базовыми картами Bing Maps, получая доступ к защищенным картам (не общедоступным) и используя ресурсы, которые требуют прокси или обмена ресурсами с запросом происхождения (Cross-Origin Resource Sharing (CORS)).

После создания шаблона веб-приложения вы можете добавить элемент приложения на портал. Если , если ваша организация планирует использовать шаблон в одной из галерей приложений, откройте к нему доступ для одной из групп приложений вашей организации. Чтобы разрешить пользователям настраивать внешний вид и поведение пользовательского веб-приложения, можно сделать его настраиваемым.

Portal for ArcGIS включает ArcGIS API 3.15 for JavaScript. Размещать собственный API и перенаправлять портал на локальную версию для новых шаблонов не нужно; шаблоны веб-приложения автоматически ссылаются на установленный API. Локально установленный API обычно доступен на https://webadaptorhost.domain.com/webadaptorname/jsapi/jsapi.

Внимание:

Не изменяйте файлы шаблонов веб-приложений, которые предоставляются с Portal for ArcGIS, так как эти файлы управляются порталом и любые внесенные в них изменения могут быть впоследствии перезаписаны порталом. Если вы хотите настроить шаблоны, то выполните следующие действия:

  1. Создайте копию существующего файла шаблона, который вы хотите настроить.
  2. Разместите копию в другом месте на диске.
  3. Настройте копию шаблона.
  4. Добавьте ее на портал в качестве нового шаблона.

В этом разделе описывается, как создавать шаблоны веб-приложений. Предполагается, что вы имеете соответствующие права для создания ресурсов и предоставления к ним общего доступа для групп вашей организации.

Веб-карты

Шаблоны приложений созданы для работы с картой, отображаемой в текущий момент времени в Map Viewer. Шаблоны обычно создают карту на основе веб-карты, указанной в параметре веб-карты из URL. В каждом веб API есть вспомогательный метод, который создает карту, используя ID веб-карты.

Например, вы можете при работе с ArcGIS API for JavaScript использовать метод esri.arcgis.utils.createMap, чтобы создать карту, основанную на входном ID. Вы также можете добавить функцию callback, которая выполняется по завершению синхронного запроса к esri.arcgis.utils.createMap.

esri.arcgis.utils.createMap(webmap,"map",{
   mapOptions:{
     slider:false
   },
   bingMapsKey:bingMapsKey
}).then(function(response){
    map = response.map;
});
Примечание:

В том случае, если ваша карта содержит базовую карту Bing Maps, вам требуется указать ключ Bing Maps при использовании метода createMap. Есть несколько других опций карты, которые вы можете настроить, например, отображение бегунка, инструментов навигации, информации об авторах и т.д.

Функция callback позволяет обращаться к объекту ответа, который открывает доступ к объекту карты, слоям и т.д.

Регистрация шаблона приложения

Если в вашем шаблоне приложения используются защищенные элементы, то сначала вам будет нужно их зарегистрировать. Для этого добавьте новый элемент Картографическое веб-приложение и выберите для URL шаблон приложения, который размещен на вашем веб-сервере.

После добавления ваших объектов вам нужно зарегистрировать приложение. Поскольку это веб-приложение, выберите для типа Browser, указав для опции Redirect URI URL-ссылку на шаблон приложения.

После успешной регистрации приложения ему присваивается уникальный ID.

Используйте Identity Manager, чтобы ID зарегистрированного приложения мог быть распознан. Для получения дополнительной информации см. примеры OAuth Basic и OAuth Popup, поставляемые с ArcGIS API for JavaScript.

Группа

Групповые шаблоны отображают содержание карт из указанной группы в виде приложения.

ArcGIS REST API предоставляет доступ к ресурсам вашего портала. Вы можете использовать его для извлечения ресурсов группы, обращаясь к ним через входной ID группы.

В этом примере вы сформируете запрос с целью поиска группы со входным значением идентификатора.

var portal = new esri.arcgis.Portal('https://webadaptorhost.domain.com/webadaptorname/');
dojo.connect(portal, 'onLoad',function(){
    portal.queryGroup(groupid).then(function(response){
        var group = response.results[0];
     });
});

После нахождения группы, вы можете выполнить запрос об извлечении имеющихся в группе ресурсов.

В этом примере выполняется запрос о нахождении в группе пяти элементов с типом Web Map или Web Mapping Application.

var queryParams = {
    q: 'type:"Web Map" -type:"Web Mapping Application"',
    num: 5
 };
group.queryItems(queryParams).then(function(response){
    var groupItems = response.results;
});

Дополнительные условия

Веб-приложения обычно разрабатываются для использования с ресурсами различных типов, поэтому, вам может потребоваться настроить шаблон на работу с картами, построенными на базовых картах Bing Maps, защищенных ресурсах и т.д. Ниже перечисляются определенные условия работы с шаблонами.

Ключ Bing Maps

Если карта, которую вы желаете отобразить, использует базовую карту Bing Maps, то в ваше приложение необходимо добавить ключ Bing Maps. Ключ Bing Maps указывается в качестве параметра метода createMap.

Прокси и поддержка CORS

Поскольку ваше приложение будет формировать кросс-доменные запросы, необходимо включить механизм доступа CORS или добавить прокси к вашему приложению.

Добавление шаблона на портал

После создания шаблона и размещения его на вашем веб-сервере добавьте шаблон на ваш портал в качестве элемента веб-приложения и укажите URL-адрес приложения. Для этого выберите Настраиваемый. Для API выберите JavaScript.

Убедитесь, что вы добавили название и краткую информацию, так как эти данные отображаются при наведении курсора на элемент шаблона в галерее шаблонов. Вы также можете создать ZIP-файл, который будет содержать файлы вашего приложения, и прикрепить его к элементу для скачивания.

Использование шаблона в галерее приложений вашей организации

Если вы хотите использовать шаблон в галерее приложений Map Viewer вашей организации или в галерее приложений группы, сделайте его доступным для группы, которая использует эту галерею. Тогда администратор вашей организации сможет настроить карту или настроить группы, чтобы использовать группу, содержащую ваш шаблон.