HTTP 请求

HTTP 请求是指为每一项传入工作执行 HTTP 或 HTTPS 请求的处理器。因此,传入工作是请求触发器并可用来定义请求规范,如URL、认证数据,请求参数和需上传的文件等。协议类型(HTTP 或 HTTPS)自动从 URL 中删除:若 URL 以"https://"开头,则协议为 HTTPS,否则为 HTTP。

服务器通过发送一些信息,如 HTML 来源、JSON 或 XML 数据,或下载的文档,来回应请求。该工具提供了用于操作服务器回应的属性。服务器的回应保存为文件,且该工具可将文件作为新的工作注入到流程中。服务器回应可作为元数据数据集附加到传入工作中或同传入工作一起组合到工作文件夹中。

关键字

若在流程元素窗格顶部的搜索字段输入以下任一关键词,HTTP 请求元素显示在表格中:
  • HTTP
  • HTTPS
  • POST
  • PUT
  • GET
  • 下载
  • 上传
  • 请求

连接

支持输出信号灯连接的 HTTP 请求有:
  • "数据"连接传送服务器的回应文件和输入工作(取决于流程元素的属性值)。
  • "日志"连接传送生成的文本日志文件,其中含请求 URL、完成状态、状态码、状态描述、最后的错误和其他相关信息。输入工作文件的文件扩展名替换成"log"后生成日志文件名称。
  • "成功"连接仅在请求完成状态为"OK"且 HTTP 请求状态码在 100 到 299 的范围内时才可使用。
  • "错误"连接仅在请求完成状态不为"OK"且 HTTP 请求状态码在 300 到 599 的范围内时才可使用。输入工作可能因某些内部工具错误和无效工具设置失败。

属性

属性

描述

名称

画布中显示的流程元素名称。

描述

画布中显示的流程元素描述。将光标悬停在流程元素上方时出现的工具提示中也会显示此描述。

URL

要获取的URL。URL 字符串必须为 URI 编码后的字符串(在 URI 编码的字符串中,空格显示为%20)。

工具从 URL 自动检测到要用于请求的协议:若 URL 以"https://"开头,工具将使用 HTTPS,否则使用 HTTP。

例 1(使用带变量的单行文本编辑器输入);假设工作名称只含 ASCII 字母和数字:

https://api-content.dropbox.com/1/files_put/auto/[Job.Name]

例 2 (使用脚本表达式编辑器输入):

HTTP.encodeURI( "https://api-content.dropbox.com/1/files_put/auto/" + job.getName() );

请求类型 请求的类型。
支持的请求类型有:
  • PUT (用于上传数据)
  • GET (用于下载数据)
  • POST (用于上传带额外参数的数据)
注: 请求中"内容-类型"标题的值,基于请求类型和其他设置如 MIME 编码和定义的参数等,自动产生。在 HTTP 请求工具中,不允许自定义标题值。尽管在一些情况下可通过编写脚本使用 Switch 脚本 API 中的 HTTP 类请求。有关自动为"内容 - 类型"标题生成的值和自定义值的方法详情,请参阅 Switch 脚本参考。
添附的文件

请求类型POSTPUT 时,此属性可用。

使用 POST 或 PUT 请求时附加到请求的文件。文件上传至服务器。

使用 MIME 编码

请求类型POST 时,此属性可用。

如需使用 MIME 编码,选择;否则选择(默认)。

文件变量

请求类型POST使用 MIME 编码时,此属性可用。

接收 HTTP 服务器为了识别上传的 MIME 文件包中的正确文件部分而使用的 HTTP 表单数据变量名称。

认证架构

需要服务器认证时要使用的认证架构。

若该属性设置为(默认),则不执行认证。

若该属性设置为基本,则必须设置用户名密码属性,且此时元素将尝试基本认证。

若认证架构设置为摘要NTLM协商,则将尝试摘要、NTLM 或协商认证。

若认证架构设置为专有权,则必须通过认证属性提供认证令牌。

若认证架构设置为 OAuth,则必须通过认证属性提供认证字符串。

用户名

该属性仅在认证架构基本摘要NTLM协商时才可用。

要使用认证时的用户名。

密码

该属性仅在认证架构基本摘要NTLM协商时才可用。

要使用认证时的密码。

认证

该属性仅在认证架构专有权OAuth 时才可用。

要发送到服务器的认证字符串。

参数

要添附到请求的参数。每个参数应由字符串"key=value"(不带引号)在独立的行中指定。

参数自动由 URI 编码。对于 POST 和 PUT 请求,参数包含在 HTTP 标题后的 HTTP 请求中。对于 GET 请求,参数附加到"?"后的 URL。

例如:

root=auto

path=[Job.JobState]

标题 要添附到请求的标题。每个标题应由字符串 key:value 在独立的行中指定。

例如:Content-Type : text/plain

响应 从服务器接收到的响应始终保存到文件。该属性决定了如何处理文件:
  • 注入为新工作:响应作为新工作发送到输出数据连接。
  • 添附为数据集:响应作为不透明数据集以"HTTPResponse"名称添附到输入工作,然后输入工作发送到输出数据连接。
  • 组合在工作文件夹中:响应连同输入工作组合到新的工作文件夹且工作文件夹发送到输出数据连接。工作文件夹名称和输入工作名称相同(不带扩展名)。
  • 丢弃:响应被丢弃。此时输入工作发送到输出数据连接。

文件名

该属性仅在回应注入为新工作组合在工作文件夹中可用。

响应文件要使用的文件名(带有扩展名)。

自动:该工具尝试决定来自于服务器回应的内容-布置标题的文件名。若内容-布置标题丢失或者不含有效文件名,该工具会使用默认文件名"回应"。

输入工作

该属性仅在回应注入为新工作可用。

定义了在回应文件被注入为新工作时如何处理输入文件:
  • 发送到输出:此时输入工作作为单独的工作发送到输出数据连接。换言之,输入工作和响应文件目前为两个独立工作。
  • 添附为数据集:若输入工作为文件,则将其作为不透明数据集以"HTTPInput"名称添附到代表响应文件的新工作。若输入工作为文件夹,则丢弃该工作并记录一条错误消息。
  • 丢弃:输入工作被丢弃。