API-интерфейс REST Azure Data Factory для обслуживания уже сейчас - проблема разбивки на страницы - PullRequest
0 голосов
/ 08 февраля 2019

Мы пытаемся использовать фабрику данных Azure для извлечения данных из ServiceNow с помощью REST API Connector.

Мы пытались работать со специальным разъемом ServiceNow в ADF, но это неадекватно работает для наших целей - нам нужно использовать фактические значения и отображаемые значения и часто принимать небольшие нагрузки, вы не можете фильтровать отображение на местепоэтому он слишком медленный.

В простых тестах REST API работает нормально, проблема именно в разбиении на страницы.После первоначального запроса GET API ServiceNow возвращает относительные ссылки в заголовке ответа в следующем формате:

Link →<url>;rel="first",<url>;rel="next",<url>;rel="last"

Набор данных REST Resource имеет настройки для правил разбиения на страницы, и документация предполагает, что это может быть обработано - https://docs.microsoft.com/en-us/azure/data-factory/connector-rest#pagination-support

Этот универсальный соединитель REST поддерживает следующие шаблоны разбиения на страницы:

Заголовок следующего запроса = значение заголовка в заголовках текущего ответа

Мы не можем понять, что добавить в ключ / значение правил разбиения на страницы, чтобы он переходил по URL-адресу rel = "next" каждый раз, когда получает страницу данных.

Мы пробовали большинствоиз опций, описанных в документации - что-то вроде этого кажется близким:

            {"paginationRules": {
            "AbsoluteUrl": "Headers.['Link']"}

Кажется, что часть заголовков. ['Link'] сформирована правильно, но не достаточно конкретно.

Кто-нибудь посоветовал, какой должна быть настройка, чтобы эта работа работала?

Ответы [ 2 ]

0 голосов
/ 28 февраля 2019

, если я правильно понимаю, вы хотите извлечь 3-й из заголовка ссылки в качестве URL следующей страницы.Ссылка → ; rel = "first", ; rel = "next", ; rel = "last"

В настоящее время правило пагинации не поддерживает выражения, такие как извлечение строк вэто дело.

0 голосов
/ 13 февраля 2019

С помощью API REST вы можете выполнить нумерацию страниц, добавив этот параметр в ссылку

&sysparm_offset=10000

Предел по умолчанию 10000, если вы хотите нижний предел, добавьте

&sysparm_limit=300

и настройте смещениесоответственно.

...