首页 > 解决方案 > Azure 数据工厂分页不起作用

问题描述

我正在开发一个执行 oAuth2 流以访问REST API json 数据的管道。获得不记名令牌后,我将执行一个返回以下结构的请求:

在此处输入图像描述

如您所见,由于响应非常大,因此启用了分页,并且作为响应的一部分,我获得了指向下一页的链接。为了获得该资源,我还需要在标题中显示MS-ContinuationToken 。因此,这就是我在用于从 REST 端点获取数据的Copy 活动的配置中基本上执行此操作的方式:

在此处输入图像描述

这里的问题是我只得到前 2000 行,而下一页似乎根本没有被访问。管道成功执行,仅获取前 2000 个项目。

注意continuationTokenlinks.next.headers.value具有与初始响应完全相同的值。

标签: azure-data-factory

解决方案


即使您解决了其他问题,您也会遇到“下一个”URL 不包括“v1”的问题。这是合作伙伴中心 api 团队中的一个已知问题。我已经把它升级得很高了。但是他们不希望通过更改“下一个”URI 以包含 v1 或相对来破坏向后兼容性。他们正在考虑其他选择,但我不会屏住呼吸。

我会放弃使用数据工厂的想法,而是使用合作伙伴中心 SDK 编写一个 .NET 控制台应用程序

(您可能会考虑使用循环等手动分页,但 Copy 活动不会返回例如 http 标头,因此您将需要一个复杂的设置来以某种方式将数据存储在数据存储中并能够在其中查找最后一页为了获得延续令牌。我想不通)


推荐阅读