我正在尝试从外部API将数据导入Azure SQL DB。我将每天制作不同的50个API,每个API都使用Azure SQL DB中的参数进行动态驱动。
我开始使用Azure Data Factory。但我无法为API调用设置动态http源。
首先,我创建了一个查找活动,以获取我将传递给API调用的键/参数列表。
然后将查找输出映射到ForEach
个项目。在ForEach
内,创建了一个Copy DataFlow活动,其中http源和Azure SQL DB作为接收器。
如何将ForEach
项值注入API调用?
domain.com/api/[ForEach Item]/GetData
domain.com/api?item=[ForEach Item]
谢谢。
答案 0 :(得分:0)
在foreach中的活动中,您可以使用值指定参数 @item()。['列名称']列名称代表您的foreach活动中的项目,您的参数= @item()。columnName ,之后您可以传递此参数进入你的api电话。检查一下 https://docs.microsoft.com/en-us/azure/data-factory/control-flow-for-each-activity
答案 1 :(得分:0)
我成功地将整个相对URL路径从查找传递到ForEach任务中,然后在DataSets相对URL中使用@ {item()。columnName}。在您的情况下,@ {item()。columnName}的值将是domain.com/api/[value]/GetData的列表(针对每个列表)。
理论上,您应该能够使用@concat动态创建URL,但是提前构建列表确实可以。