0

我在微软 Azure 数据工厂工作。我正在尝试创建一个复制数据活动,该活动接受输入“userId”并将输出返回给我。

其结构如下:

  1. 我使用“设置变量”活动创建了一个变量
  2. 这会导致“复制数据”活动,该活动使用变量并将其发送到 Rest Resource 数据集
  3. 这个 Rest Resource 有一个名为“comon”的参数,它等于之前的变量。休息资源链接到休息服务
  4. 这个 Rest Service 包含一个参数:“variable”,它等于“comon”参数。然后,Rest Service 在其包含 API 调用的基本 URL 中使用“变量”。

有了这个结构,我希望使用上面步骤 1 中使用的任何变量进行 API 调用。但是,当尝试使用变量“预览数据”时,出现以下错误:

[
 {
  "result": "error",
  "message": "The segment condition '@body(&#039' is not valid")
  }
]

由于以下原因,我已将问题确定到上面的第 3 步:API 调用工作正常,如果我不使用“comon”变量,而是将第 4 步中的“变量”硬编码为等于我的原始变量. 然而,当我再次尝试实现“comon”时,我又回到了我的错误中。

以下是我的数据工厂管道的屏幕截图:

复制数据的变量

复制数据活动

休息资源

休息参数

休息服务

这是我可以硬编码到变量以使其工作的地方:

硬编码而不是参数

但是,如果我改为在“参数”中对其进行硬编码,则它不起作用:

又不行了。。。

4

1 回答 1

0

我测试了你的管道。虽然成功了,但是我没有得到我期望的 URL。我得到了这个:http://localhost:8080/test/Test?parameter=@body('Copy data1ComposeRuntimeVariables')?.RestResource1cec80568393745918b91c3a6b6cfece4.comon。似乎价值@dataset().comon没有传递给链接服务。

然后我删除了链接服务中的参数并使用了这样的相对 URL: 在此处输入图像描述

它工作得很好,我得到了我预期的 URL http://localhost:8080/test/Test/?parameter=userId==0023:。

于 2020-11-16T02:16:45.463 回答