Тип канала HTTP Poller в ArcGIS Velocity будет отправлять HTTP-запрос на указанный URL веб-сайта. Он собирает данные, которые могут быть извлечены в веб-браузере по этому URL.
Пример
Обновленные значения загружаются из API каждую минуту.
Примечания по использованию
При работе с каналом учитывайте следующее:
- Канал будет опрашивать конечную точку HTTP для загрузки данных с частотой, определяемой параметром на шаге Интервал опроса канала в мастере настройки.
- Когда задан интервал опроса, опрос происходит через регулярные временные интервалы, в противоположность времени запуска канала. Например, если канал настроен на опрос данных каждые пять минут и запускается в 8:03, первый запрос данных произойдет в 8:05, следующий — в 8:10 и т.д.
- Будьте внимательны при задании значения Интервала опроса канала. Убедитесь, что опрашиваемая конечная точка HTTP способна возвращать ответы в течение указанного интервала опроса. Рекомендуется проверить время ответа запроса на веб-сайт, используя тот же запрос, который вы применяете в конфигурации канала. Не задавайте интервал опроса короче, чем стандартное время ответа запроса на веб-сайт.
- Параметры Тело POST, Параметры URL и Пользовательские заголовки поддерживают глобальные переменные канала . По умолчанию, глобальные переменные канала конвертируются во время эпохи (миллисекунды с 1 января 1970 UTC). Можно преобразовать глобальные переменные канала в секунды эпохи (секунды с 1 января 1970 года) и строковый формат даты и времени . При первом запуске канала после запуска или перезапуска $feed.FeedLastScheduledStartTime будет равно $feed.FeedScheduledStartTime минус значение шага Интервал опроса канала. Это позволяет ленте получать данные от скорректированного времени начала до текущего времени, что предотвращает попадание большого объема исторических данных. Ниже перечислены аналитические переменные канала и время, которое они представляют:
- $feed.FeedStartTime — время запуска канала.
- $feed.FeedScheduledStartTime — запланированное время следующего запуска.
- $feed.FeedLastScheduledStartTime — запланированное время последнего запуска.
- Уровни лицензий подписки Velocity имеют ограничения на объем данных, который может быть получен с помощью канала, как указано ниже. Если каналы превышают предел приема данных вашего уровня лицензии, в журналы записывается сообщение, и вам отправляется электронное письмо с уведомлением о достижении предела. Если скорость приема данных канала превышает предел уровня подписки больше часа, канал останавливается. При необходимости проконсультируйтесь со своим представителем Esri или EsriСлужбой технической поддержки Поддержка , чтобы изучить Velocity уровни лицензий, которые поддерживают ваши рабочие процессы. Уровни лицензий следующие:
- Standard — прием и обработка данных со скоростью 25 КБ/с (примерно 100 событий в секунду).
- Advanced — прием и обработка данных со скоростью 250 КБ/с (примерно 1000 событий в секунду).
- Dedicated — прием и обработка данных со скоростью 2,500 КБ/с (примерно 10000 событий в секунду).
- После настройки параметров подключения канала обратитесь к разделу Настройка входных данных, чтобы научиться задавать схему и ключевые поля.
Аутентификация OAuth
Тип канала HTTP Poller поддерживает аутентификацию, используя конечные точки OAuth 2.0 for HTTP, соответствующие назначенным типам Учетные данные пользователя или Пароль. Эти типы OAuth соответствуют образцу, включающему конфигурацию запроса HTTP согласно токену доступа, и дополнительно настраивают запрос на использование токена обновления для получения новых токенов доступа. Они являются дополнением к запросу данных, который обычно настраивается как часть любого типа канала HTTP Poller.
Во время настройки запроса токена доступа, вам будет предложено идентифицировать токен доступа и дополнительные токен обновления и поля окончания срока действия JSON в ответе от сервера авторизации OAuth. Если выбран срок окончания действия, необходимо задать тип окончания срока действия (продолжительность или метка времени) и единицы измерения. Чтобы настроить временную метку окончания срока действия, выраженную в виде строки, установите единицу окончания срока действия на Другое и укажите формат даты, добавив строку форматирования даты окончания срока действия. Если поле токена обновления указано без срока действия, канал попытается выполнить запрос токена обновления, если основной запрос данных не будет выполнен дважды подряд.
Если по запросу токена доступа идентифицируется токен обновления, необходимо использовать глобальную переменную $refreshToken, чтобы определить, где в конфигурации запроса токена обновления используется токен обновления. Глобальную переменную $accessToken можно использовать в запросе токена обновления. Обе глобальные переменные $refreshToken и $accessToken доступны для ссылок в теле POST, параметрах URL и пользовательских заголовках.
При возвращении к конфигурации запроса данных, необходимо использовать глобальную переменную $accessToken, чтобы задать, где будет использоваться токен доступа. Часто это происходит в настраиваемом заголовке Authorization, со значением Bearer $accessToken. $accessToken может также быть использован в теле POST-запроса, параметрах URL и в самом URL-адресе (например, https://<company.domain>/$accessToken/<method>?<url params>).
Во время обработки, канал с настроенной аутентификацией OAuth будет управлять токеном доступа и соответственно обрабатывать любые ошибки получения данных. Например, если заданы запрос токена обновления и окончание срока действия, канал будет использовать токен обновления, первоначально полученный с токеном доступа, для запроса нового токена, если срок действия предыдущего закончился.
При создании канала с OAuth учитывайте следующее:
- Во время авторизации выполняется множество запросов к серверу авторизации и связанной конечной точке данных. Некоторые API используют ограничение количества запросов, что может сказаться на авторизации канала.
- В целях безопасности, POST сообщения запросов токенов доступа и обновлений должны быть переконфигурированы, если отредактированы параметры аутентификации.
- Токены доступа могут храниться как JSON Web Tokens (JWT). При использовании формата JWT для токена доступа, включите опцию Использовать формат JWT. Velocity декодирует токен, и если полезные данные включают заявление exp, это значение автоматически используется в качестве окончания срока действия. exp - временная метка окончания срока действия токена доступа в секундах эпохи.
Параметры
Ниже приведены параметры канала:
Параметр | Описание | Тип данных |
---|---|---|
URL | Полный URL на внешне доступную конечную точку HTTP. Этот параметр поддерживает глобальную переменную $accessToken. | Строка |
Метод HTTP | Метод HTTP определяет метод HTTP, используемый на для конечной точки HTTP, GET или POST. Если выбран метод POST, можно задать текст сообщения. | Строка |
Текст POST | Текст сообщения, которое будет включено при отправке HTTP-запроса POST. Обеспечивает выбор между x-www-form-urlencoded и другими типами текстовых ресурсов. Также задает заголовок Content-type. Этот параметр применяется только в том случае, когда для параметра Метод HTTP задано POST. Этот параметр поддерживает глобальные переменные канала и $accessToken. | Строка |
Аутентификация | Аутентификация задает тип аутентификации, используемый при доступе к точке доступа HTTP. Доступные опции: Нет, Базовая, Сертификат и OAuth. | Строка |
Имя пользователя | Имя пользователя, использующееся для доступа к конечной точке HTTP. Этот параметр применяется только если для параметра Аутентификация выбрано Базовая. | Строка |
Пароль | Пароль для доступа к конечной точке HTTP. Этот параметр применяется только если для параметра Аутентификация выбрано Базовая. | Пароль |
URL сертификата | URL местоположения сертификата клиента для доступа к конечной точке HTTP. Этот параметр применяется только если для параметра Аутентификация задано Сертифицированная. | Строка |
Пароль | Пароль сертификата клиента, если он задан. Этот параметр применяется только если для параметра Аутентификация задано Сертифицированная. | Пароль |
Пользовательские заголовки | Дополнительные пользовательские заголовки, включающиеся в запрос HTTP, отправляемый на указанную конечную точку HTTP. Например, пользовательские заголовки могут использоваться для указания стороннего ключа API или заголовка. Этот параметр поддерживает глобальные переменные канала и $accessToken. | Пара ключ-значение |
Параметры URL | Дополнительные параметры URL, включающиеся в URL запроса HTTP, отправляемого на указанную конечную точку HTTP. Хотя параметры также могут быть заданы в параметре URL, параметры URL, указанные здесь, имеют приоритет над соответствующими параметрами, заданными в параметре URL. Заданные здесь параметры всегда будут закодированы в URL. Этот параметр поддерживает глобальные переменные канала и $accessToken. | Пара ключ-значение |
Длительный опрос | Длительный опрос определяет, будет опрашиваться веб-сервер и поддерживаться открытое подключение в ожидании отправки новых данных с сервера. Когда будут получены новые данные, будет сразу же отправлен новый запрос. Примечание:Это уникальная конфигурация веб-сервера, не характерная для большинства веб-серверов. | Boolean |
Глобальные переменные (дополнительно) | Используйте этот параметр для преобразования глобальных переменных канала в пользовательский формат даты и времени. Этот параметр поддерживает глобальные переменные канала и $accessToken. Узнайте больше о настройке формата даты (миллисекунды эпохи, секунды эпохи и формат строки) | Строка |
Дополнительное ведение журнала (дополнительно) | Включите параметр Дополнительное ведение журнала, чтобы указать, можете ли вы регистрировать необработанные HTTP-запросы и ответы, отправленные Velocity. Примечание:Включайте этот параметр только в целях устранения неполадок и отключайте его после завершения устранения неполадок. После включения запустите канал, журналы уровня отладки будут доступны на странице журналов канала. При необходимости обратитесь в Esri Technical Поддержка за помощью в устранении неполадок. | Boolean |
Советы и ограничения
При использовании канала учитывайте следующее:
- Конечная точка HTTP должна быть доступна извне через интернет.
- Размер ответа fHTTP или файла не должен превышать 16 МБ. Если запрашиваемые данные превышают 16 МБ, объекты не будут приняты.
- Рекомендуется использовать этот тип канала для данных в реальном времени со скоростью около 3000 точечных объектов в секунду или менее. Поддерживаемая скорость варьируется в зависимости от количества атрибутов в данных, формата входящих данных и сложности полилинейных или полигональных объектов.