Skip to main content

Download Tool Icon 下载工具

使用“下载”从 URL 检索数据以用于下游处理或保存到文件中。“下载”工具还可以通过 FTP 和 SFTP 下载或上传数据。

从 2022.3 开始的非 FIPS Designer 版本默认启用 对等验证 。转至 对等验证允许列表 了解如何在平面文件中指定问题主机的列表(应在这些主机上跳过对等验证)。

配置工具

“基本”选项卡

使用 基本 选项卡为“下载”工具设置必须的控制。

  1. URL 字段 :指定传入数据流中包含要从中提取数据(或将数据上传到)的 URL(统一资源定位器 - Internet 资源)的字段。这可能只是一个在 文本输入工具 中通过一个字段值指定 URL 。

    将“下载”工具与 DCM 一起使用时,将从中提取数据的 URL 会分为两部分。URL 的基是从 DCM 数据源定义中获取,而后一部分(附加到基 URL 的部分)是从传入数据流中获取。

  2. 编码URL文本 :选中时,URL 会予以编码,因此不安全的 ASCII 字符会转换为可以通过 Internet 传输的格式。例如,以 %20 替换空格。

  3. 输出 :指定返回数据的格式。数据可以通过数据字段返回或输出到文件中。

    • 至字段 :下载的内容作为数据字段在数据流中返回。下载的内容将位于一个名为“DownloadData.”的字段中。您可能需要使用下游工具(如 文本转换到列工具 正则表达式工具 公式工具 )解析此数据。

      • 字符串 :数据作为新的宽字符串类型字段返回。宽字符串支持 Unicode® 字符。选择一个用于编码的 代码页 。默认为 UTF-8。为了获得最一致的结果,应用程序应使用 Unicode,如 UTF-8(代码页 65001)或 UTF-16,而不是特定的代码页。

      • Blob :数据作为新的 blob 类型字段返回。Blob 也称为二进制大型对象。图像文件通常以这种格式存储。要使用图像,请在下游配置 图像工具 并指定图像或 Blob 字段。

    • 至文件

      • 临时文件 :数据输出到位于用户临时目录中的临时文件。如需详细了解如何在 Designer 中进行临时文件处理,请参阅 Alteryx 和临时文件

      • 文件名在字段中 :数据输出到一个特定文件中,通过一个传入字段指定文件。使用下拉菜单选择要输出到的文件名所在的字段。

标题选项卡

使用 标头信息 选项卡修改随 Web 请求发送的 HTTP 标头

  • 添加以下常量值 :允许添加固定标头值。

    For example, to add the header "Accept: text/plain"...

    1. Select the Add button.

    2. Enter "Accept" in the Name field and "text/plain" in the Value field.

  • 包含值的字段 :从记录数据中取值来创建标头值。

    For example, to add the header "Expect: 100-continue", select a field from the input data named "Expect" that contains "100-continue."

“实际数据”选项卡

使用 实际数据 选项卡设置要执行的 HTTP 操作,并根据需要为 Web 请求构建查询字符串或请求体。

  1. HTTP 操作 :为 Web 请求选择 HTTP 操作:

    • GET(或 FTP) :执行 GET 请求或从 FTP 或 SFTP 站点下载文件。您无需在此选项卡上输入任何其他选项,即可从所选 URL 下载数据。

    • POST :对所选 URL 执行 POST 请求。通常,在使用此选项时,您使用以下选项指定 POST 请求体。

    • PUT :执行 PUT 请求。此选项仅允许您通过 Blob 输入工具从 blob 字段中获取查询正文。通常用于将文件上传到远程服务器。

    • DELETE :执行 DELETE(删除)请求。通常用于要求远程服务器删除指定的资源。

    • HEAD :执行 HEAD 请求。要求服务器返回标头数据,但不返回正文数据。

    • 自定义 :这允许您在文本框中输入自定义动词。此请求的其他所有行为与 POST 相同。就在发出请求之前,POST 动词被自定义动词替换。

      动词支持

      只有当您向其发送请求的远程服务器支持某个特定动词时,这些选项才有效。检查有关您在使用的 URL 的 API 文档,以查看哪些请求是受支持的。

  2. 从以下查询字符串/正文选项中选择:

    • 编写查询字符串/正文

      1. 来自以下常量值 :将常量名值对添加到查询字符串/正文

      2. 包含值的字段 :从传入数据记录中获取名值对。字段名称是查询字符串/正文中使用的名称

      3. Content-Type :控制名值对的编码方式。

        • Application/x-www-form-urlencoded :例如,Name1=Value1&Name2=Value2&Name3=Value3。因为不安全的 ASCII 字符会被自动编码,因此请确保不要预先对您的数据编码。

        • Multipart/form-data :仅在使用 HTTP 操作 POST 和“自定义”时才可用。

    • 从字段中获取查询字符串/正文 :选择输入数据中包含查询字符串/正文数据的字段。使用 HTTP 操作 POST、PUT 和“自定义”时,可以选择 Blob 字段。

    • 从以下框中获取查询字符串/正文 :此文本框允许您手动输入查询字符串或正文内容。

    • 所有文本数据在发送到远程 Web 服务器之前都经过 UTF-8 编码。

“连接”选项卡

使用 连接 选项卡设置连接凭证。

  • 用户名(可选) :如果上述 URL 规范要求,请输入用户名。这是可选字段。

  • 密码(可选) :如果上述 URL 规范要求,请输入密码。这是可选字段。

以上凭证用于基本身份验证。

  • 最大连接数量 :指定“下载”工具要执行的最大同时传输数。只有当有多条输入记录被发送到下载工具时,才会并行传输。多个“下载”工具独立运行,但通常不会同时运行。对于添加到工作流的新的下载工具,默认连接数为 2,最大连接数为 32。

    增加连接数可能会减少完成所有传输所需的总时间,但请注意不要将连接数设置得太高,否则可能会使服务器过载。如果服务器认为您使用不当,它可能会停止响应、报告错误,甚至拒绝连接。这在访问不受您控制的公共网站时尤为重要。大多数 Web 浏览器会进行多达 6 次的同时传输,但这些通常是作为网页的一部分的相对较小的传输。对于您自己企业内部的,您可以更好地控制其配置方式的服务器,使用更多数量的连接可能是可以的。

    此外,由于“下载”工具会在传输完成时向下游发送记录,因此可能会导致记录通过该工具时的顺序发生变化。如果顺序很重要,请确保对结果进行排序或将连接数限制为 1。最后,请注意空 URL 会在需要实际传输的 URL 之前处理。

  • 超时(秒) :指定在报告由于连接无响应而导致的超时之前要等待的秒数。选择 0(从不超时)到 10,000 之间的一个数字。

  • 限制记录数量 :(默认情况下未选中)选中此选项可限制在给定分钟内通过该工具的记录数。当可以处理的记录数受到限制时,这对于指定每分钟发送的请求数很有用。

  • 每分钟的记录数 :选中正上方的 限制记录数量 复选框,以自定义您希望每分钟通过该工具的记录数。

    • 默认值为 60。

    • 可接受的范围为 0 到 60,001(不含)。

DCM 支持

下载工具的 DCM 支持通过基本验证对 API 端点进行身份验证。当发送 PUT 和 POST 请求时,它还可以解析请求标头或实际数据常量中存储在 DCM 中的值。这是通过允许使用 base64 编码对标头或实际数据值的特定部分进行编码来实现的。该编码与 DCM 扩展值配合使用,可让您添加来自 DCM 的凭证并使用 base64 对其进行加密。

选中 使用数据连接管理器 (DCM) 复选框以通过 DCM 设置连接。如需了解详情,请参阅 DCM - Designer

在 PUT 和 POST 实际数据请求中解析 DCM 凭证

通过选中 解析实际数据 复选框,您可以将 DCM 特定的别名用于“标头”和“实际数据”设置。别名可以用于名称和值,而仅“编写查询字符串/正文”选项支持“实际数据”。运行工作流后,这些别名将自动替换为相应的 DCM 值。支持的别名:

These are the supported aliases:

  • {dcm:userName}

  • {dcm:password}

  • {dcm:host}

1_basic.png
2_multipart_form-data.png
  1. 将下载工具添加到画布,选择 DCM 连接,并确保选中 解析实际数据 复选框。

  2. 标头或实际数据 选项卡上,根据您目标端点的要求,您可以添加一个常量,并在 列中使用 {dcm:userName} {dcm:password} 。您可以组合多个 DCM 引用或添加自定义字符串;例如,可以创建值为 {dcm:userName}:{dcm:password} 的标头 Authentication

  3. 如果您希望在 POST 请求中将 DCM 密钥作为实际数据正文的一部分进行解析,请确保从 内容类型 下拉列表中选择 multipart/form-data 选项,因为出于安全原因,Alteryx 不允许在 URL 内扩展密钥。

Base64 编码

在“下载”工具的配置窗格中,您可以使用 {base64:yourtextgoeshere} 标记将任何字符串纳入“标头”或“实际数据”常量值中。如果要对 DCM 引用值进行 base64 编码,则可以将其与任何其他字符串甚至上述 DCM 标记结合使用。

您可以使用 {base64:{dcm:userName}:{dcm:password}} 作为 Authentication 标头值,对存储在 DCM 中的用户名和密码组合进行编码。

3_64.png

其他注意事项

为避免使用“下载”工具时出现连接延迟,请确保在账户的 Internet 属性(控制面板>Internet 选项>连接>局域网 (LAN) 设置)中取消选中“自动检测设置”选项。