UiPath Documentation
activities
latest
false

开发者活动

上次更新日期 2026年4月21日

HTTP 请求

UiPath.Web.Activities.Http.NetHttpClient

重要提示:

从 2.0.0 预览版和 2.3.0 开始的 WebAPI 包版本中提供此活动GA。对于旧版体验,请使用 2.0.0 预览版之前的 WebAPI 版本中包含的先前HTTP 请求(旧版)活动。

描述

使用 WebAPI 2.0.0 预览版中的“HTTP 请求”活动,以自动化并简化向网页服务器或 API 发出的请求。“HTTP 请求”活动可帮助您:

  • 在系统之间安全地发送和接收数据。
  • 使用表单上传文件和数据。
  • 在出现问题时,通过重试请求正常处理错误。
  • 使用 SSL 安全连接以保护数据。
  • 自动管理 Cookie 和代理,以处理会话和网络限制。

项目兼容性

Windows | 跨平台

Windows、跨平台配置

活动主体属性
请求方法* 选择 HTTP 请求应如何与服务器交互:
  • “GET” - 检索数据而不修改数据。
  • POST - 向服务器发送数据,通常用于创建或更新资源。
  • PUT - 更新现有资源。
  • “删除” - 从服务器中删除指定资源。
  • “标头” - 与“获取”类似,但仅检索标头,不检索正文内容。
  • 选项- 提供有关服务器上可用通信选项的信息。
  • “PATCH” - 部分更新现有资源。
  • TRACE - 用于诊断目的,将收到的请求回显给客户端。
请求 URL * 提供要发送请求的服务器网址。例如https://store.example.com/search
参数 将特定于服务器的详细信息作为键值对添加到您的请求中。例如, query: "laptop"sortBy: "price"
标头 以键值对形式添加服务器特定的说明或身份验证详细信息。例如, Authorization: "Bearer <your_access_token>"Accept: "application/json"
请求正文类型*

选择要发送到服务器的内容类型:

  • “无” - 不发送数据,通常用于检索方法。
  • “文本” - 以纯文本形式发送数据,通常用于 POST 和 PUT 方法。选择后,系统将显示以下字段:
    • “文本内容类型” - 选择要在 HTTP 请求中发送的文本格式,以便服务器知道如何解释它:
      • 文本/纯文本- 常规纯文本。
      • text/html - HTML 格式的文本。
      • text/css - CSS 格式的文本。
      • text/csv - 格式化为 CSV 的结构化数据。
      • text/xml - XML 格式的文本,供人类阅读。
      • application/xml - XML 格式的文本,供应用程序处理。
      • application/json - JSON 格式的文本。
    • 文本- 写入要在请求中发送的实际文本或数据。
    • 文本编码- 选择文本有效负载的编码格式,例如 Unicode、ASCII 或 ISO。这可确保接收服务器准确读取您的文本有效负载。
  • 表单 URL 编码- 发送格式化为简单键值对的数据。选择后,系统将显示以下字段:
    • URL 编码的表单数据- 提供键值对。例如, searchQuery: "Smartphone"brand: "XYZ"inStock: "true"
  • 多部分表单数据- 发送文件或复杂数据。当您需要将不同的数据类型组合到请求中时,请使用它。选择后,系统将显示以下字段:
    • 资源文件- 提供以 IResource 对象形式存储在项目中的文件的名称。
    • “本地文件” - 提供位于设备上的文件的路径。例如"C:/Images/product-photo.jpg"
    • “表单数据部分” - 提供“表单数据部分”对象的集合:

      • “文本表单数据部分” -适用于字符串有效负载,例如 JSON 或纯文本。
      • “二进制表单数据部分” - 对于原始字节数组。
      • 文件表单数据部分 -适用于基于给定路径的文件流。
      例如,使用“表达式编辑器”的表单数据部分集合:
      #VB
      New List(Of FormDataPart) From {
          New TextFormDataPart("{""jsonKey"":""jsonValue""}", "textPart", Encoding.UTF8, "application/json"),
          New BinaryFormDataPart(Encoding.UTF8.GetBytes("binaryContent"), "binaryPart", "application/octet-stream"),
          New FileFormDataPart("C:/Work/testfile.txt", "filePart", "text/plain")
      }
      #VB
      New List(Of FormDataPart) From {
          New TextFormDataPart("{""jsonKey"":""jsonValue""}", "textPart", Encoding.UTF8, "application/json"),
          New BinaryFormDataPart(Encoding.UTF8.GetBytes("binaryContent"), "binaryPart", "application/octet-stream"),
          New FileFormDataPart("C:/Work/testfile.txt", "filePart", "text/plain")
      }
      

      每个“表单数据部件”类型都附带多个构造函数,使您可以从常用的默认值中受益。

      该活动会自动为每个文件表单数据部分分配正确的“内容类型”标头。您可以手动覆盖此标头。对于文件列表,您无法覆盖自动分配的标头。对于资源文件列表,活动使用可用的 MIME 类型。

    • URL 编码的表单数据- 提供简单的键值对。
  • 二进制- 发送原始数据。选择后,系统将显示以下字段:
    • 二进制有效负载- 提供原始数据有效负载,例如图像、视频、大文件或流数据。例如: File.ReadAllBytes("C:/Images/product-image.jpg")
  • - 当数据无法一次完全加载到内存中时,发送连续数据,例如上传大文件(音频或视频)。选择后,系统将显示以下字段:
    • “本地文件” - 提供大文件路径。该活动自动为上传的文件分配正确的“Content-Type”标头。您可以手动覆盖此标头。例如: File.OpenRead("C:/Videos/large-video.mp4")
属性面板

cURL 导入和设计时测试

本节帮助您通过 cURL 代码片段配置活动,并对请求执行设计时测试。

  • cURL 命令文本- 可以粘贴完整 cURL 命令的多行设计时文本字段。同时支持 `cm 和 bash 样式。
  • cURL 导入按钮 -此操作按钮会立即触发将当前cURL 命令文本解析/导入到活动(方法、URL、标头、正文、身份验证、文件)。
  • 测试请求按钮 -用于在设计时执行已配置请求的操作按钮。在运行时,它会切换到“取消”。完成或取消后,它将还原为“测试”,并使用格式化的响应或错误更新“报告”字段。
  • “报告” -多行文本区域,用于显示上次 cURL 导入或设计时测试执行(成功摘要、映射详细信息、警告或错误)的结果。

客户端选项

本节帮助您定义与连接相关的设置。

  • 禁用 SSL 验证- 跳过 SSL 安全检查。用于测试 ( True ),但不建议用于生产( False,默认值)。
  • TLS 协议- 选择用于安全连接的 TLS 协议。可用选项包括“自动” (默认)、 “TLS 1.2”“TLS 1.3”
  • “启用 cookie” - 默认情况下,启用自动 Cookie 处理( “True” )。设置为False可禁用自动 Cookie 处理。
  • 客户端证书- 指示客户端证书的路径,以便使用安全 API 进行身份验证。例如"C:/certificates/client-cert.pfx"
  • 客户端证书安全密码- 存储所提供客户端证书的安全密码。例如"certPassword"

    通过选择加号图标并选择所需的选项( “使用纯字符串”“使用安全字符串”) ,在纯密码和安全密码之间切换。

  • 代理配置- 配置自定义代理,包括对身份验证和绕过列表的支持。例如"http://proxy.example.com:8080"

身份验证

本节帮助您定义活动如何通过服务器对自身进行身份验证。

身份验证- 选择身份验证方法。可用选项包括:
  • 不进行身份验证- 服务器不需要用户验证即可接受您的请求。
  • 基本身份验证- 通过用户名安全密码向接收服务器提供用户验证。

    通过选择加号图标并选择所需的选项( “使用纯字符串”“使用安全字符串”) ,在纯密码和安全密码之间切换。

  • 持有者令牌- 通过登录后生成的唯一持有者令牌向接收服务器提供用户验证。
  • 协商身份验证- 为运行时使用 HTTP 协商方案,以根据服务器质询选择 Kerberos 或 NTLM(也可能选择摘要式)。当“身份验证”设置为“协商身份验证”并且“使用操作系统凭据” = True 时,将使用当前操作系统用户上下文(Windows 登录令牌;在 Linux/macOS 上,为现有的 Kerberos 票证,例如来自 kinit)。将“使用操作系统凭据” 设置为 False,以启用“自定义凭据” 字段;需提供网络凭据(域/用户名/密码或安全密码)。

请求选项

本部分帮助您定义请求的行为。

  • “其他 Cookie” - 手动将额外 Cookie 指定为键值对。
  • “请求超时” - 指定请求中止之前的最长等待时间(以毫秒为单位)。默认值为 10,000 毫秒(10 秒)。
  • “出错时继续” - 决定在活动引发错误时是否应继续自动化( True ,默认选项)。要在发生错误时停止自动化,请使用False
  • 遵循重定向- 决定请求是否应自动遵循服务器提供的 URL 重定向( True ,默认选项)。要忽略重定向并使用初始响应,请使用False
  • 最大重定向次数- 指定在停止之前请求应遵循的自动重定向次数。默认值为 3。

重试策略

本部分帮助您定义请求失败时的重试机制。

重试策略类型- 指定重试请求的方法。可用选项包括:
  • “无重试” - 您的请求仅调用服务器一次。如果失败,则不会进行进一步的尝试。
  • 基本重试- 失败后按固定延迟时间重试请求。
    • 重试计数- 指定重试次数。默认值为 3。
    • 延迟- 指定重试之间的固定时间间隔(以毫秒为单位)。默认值为 500 毫秒(0.5 秒)。
    • “使用 Retry-After 标头” - 决定请求是否应使用服务器推荐的Retry-After标头( True ,默认选项)。要忽略Retry-After标头值,请使用False
    • “延迟限制” - 指定在重试之间允许的最大延迟时间(以毫秒为单位)。默认值为 30,000 毫秒(30 秒)。
    • 重试状态代码- 指定应触发重试的状态代码。
  • 指数退避- 在每次尝试之间增加延迟的重试次数。
    • 重试计数- 指定重试次数。默认值为 3。
    • “初始延迟” - 指定第一次重试之前的延迟时间(以毫秒为单位)。默认值为 500 毫秒(0.5 秒)。
    • 倍数- 指定用于在每个请求失败后增加延迟时间的数字。默认值为 2,每次都会使延迟加倍。
    • “使用抖动” - 对于延迟,决定是否要添加 0 到 100 毫秒之间的随机偏移量,以避免同步重试( “True” ,默认值)。
    • “使用 Retry-After 标头” - 决定请求是否应使用服务器推荐的Retry-After标头( True ,默认选项)。要忽略Retry-After标头值,请使用False
    • “延迟限制” - 指定在重试之间允许的最大延迟时间(以毫秒为单位)。默认值为 30,000 毫秒(30 秒)。
    • 重试状态代码- 指定应触发重试的状态代码。

响应选项

本部分帮助您自定义服务器返回响应的方式。

  • “始终将响应正文另存为文件” - 即使未推断出附件文件名,也强制将响应正文写入磁盘。
  • 启用调试信息- 启用扩展调试捕获(原始请求/响应元数据、标头快照、计时、重试详细信息)并将其输出到响应对象或在设计时测试期间使用。
  • (可选)输出文件名- 覆盖服务器提供的文件名(例如,从 Content-Disposition)。
  • 输出文件目标文件夹 - 控制已保存的响应文件的目标文件夹。
  • 如果文件已存在 - 定义当目标文件夹中已存在具有解析名称的文件时的冲突策略。选项:
    • 自动重命名 - 附加递增后缀(_1、_2)以生成唯一的文件名。
    • “替换” - 覆盖现有文件。
    • 停止并放弃 -
    • 中止保存操作(如果不处理异常,则中止工作流),现有文件不会受到影响。

输出

本节帮助您捕获和存储服务器返回的响应。

响应内容- 捕获来自服务器的响应,并将其存储到变量中,以供将来处理。其中包括:
  • “状态码” - HTTP 响应状态代码。
  • 文本内容- 作为纯文本的响应(如果可用)。
  • 二进制内容- 非文本内容的原始响应数据。
  • 文件- 在“下载”文件夹中作为文件 ( ILocalResource ) 保存的响应。文件名来自响应标头或自动生成,以避免覆盖文件。
  • 标头- 所有 HTTP 响应标头。
  • 内容标头- 与响应内容明确相关的标头。例如, Content-TypeContent-Length
  • 原始请求调试信息 -包含捕获的低级别请求/响应详细信息的可选字符串(例如构造的请求行、标头、重试、计时)仅在启用调试时填充;否则为空字符串。
  • 描述
  • 项目兼容性
  • Windows、跨平台配置

此页面有帮助吗?

连接

需要帮助? 支持

想要了解详细内容? UiPath Academy

有问题? UiPath 论坛

保持更新