Azure 数据工厂分页规则 - QueryParameters.page

Azure Data Factory Pagination Rules - QueryParameters.page

我正在同步 REST API,我们没有下一页,但我们确实有总页数作为一个可行的选项。这在 REST API 上循环 8 次就好了,但问题是,它不是每次都将页面查询参数递增 1,这导致它获取第一页 8 次。

我已经尝试了 baseurl 和 relativeurl 的这些变体:

baseurl: https://api.****.com/****/export/****.json?lastModifiedStart=****&lastModifiedEnd=****&page=1
baseurl: https://api.****.com/****/export/****.json?lastModifiedStart=****&lastModifiedEnd=****

baseurl: https://api.****.com/****
relativeurl: export/****.json?lastModifiedStart=****&lastModifiedEnd=****&page=1
relativeurl: export/****.json?lastModifiedStart=****&lastModifiedEnd=****

以此为分页规则:

"paginationRules": {
"QueryParameters.page": "RANGE:1:$.metadata.pagecount:",
"supportRFC5988": "true" }

这是 api 中的 $.metadata returns 的内容:

"metadata": {
"path": "export/****.json",
"receivedat": "2021-12-21T13:01:57-0500",
"endrow": 10000,
"resourcename": "export",
"isprivate": 0,
"page": 1,
"startrow": 1,
"timezone": "America/New_York",
"x-format-date": false,
"pagecount": 8,
"recordcount": 74081 }

我做错了什么?

编辑: Image Link of Setup

我发现 QueryParameters 的 paginationRule 将 page 本质上变成了一个变量。这是它发出的页面请求之一:

baseurl: ...?lastModifiedStart=2021-01-01&lastModifiedEnd=2021-12-31&7Size=1000&7=1

这告诉我 page 被视为 url 的文字参数并且递增 'page' 为 1-8 而不是 page 的值,所以要解决这个问题,我使用了以下设置:

baseurl: ...?lastModifiedStart=2021-01-01&lastModifiedEnd=2021-12-31&pageSize=1000&page=pagenum

这是分页规则:

"paginationRules": {
"QueryParameters.pagenum": "RANGE:1:$.metadata.pagecount:",
"supportRFC5988": "true" }

这样做之后,请求就像一个魅力!