UiPath Documentation
activities
latest
false
Importante :
Este contenido se ha localizado parcialmente a partir de un sistema de traducción automática. La localización de contenidos recién publicados puede tardar entre una y dos semanas en estar disponible.

Actividades de desarrollador

Solicitud HTTP

UiPath.Web.Activities.Http.NetHttpClient

Importante:

Esta actividad está disponible en las versiones del paquete WebAPI a partir de 2.0.0-preview y 2.3.0 GA. Para la experiencia heredada, utiliza la actividad Solicitud HTTP anterior (heredada) incluida en las versiones de WebAPI anteriores a la vista previa 2.0.0.

Descripción

Utiliza la actividad Solicitud HTTP en WebAPI 2.0.0-preview para automatizar y simplificar la realización de solicitudes a servidores web o API. La actividad Solicitud HTTP te ayuda a:

  • Envía y recibe datos de forma segura entre sistemas.
  • Cargar archivos y datos mediante formularios.
  • Gestiona los errores con elegancia volviendo a intentar las solicitudes si algo sale mal.
  • Conéctese de forma segura utilizando SSL para proteger los datos.
  • Gestiona las cookies y los proxies automáticamente para gestionar las sesiones y las restricciones de red.

Compatibilidad de proyectos

Windows | Multiplataforma

Windows, configuración multiplataforma

Propiedades del cuerpo de la actividad
Método de solicitud * Selecciona cómo debe interactuar tu solicitud HTTP con el servidor:
  • GET : recupera datos sin modificarlos.
  • POST : envía datos al servidor, normalmente para crear o actualizar un recurso.
  • PUT : actualiza un recurso existente.
  • ELIMINAR : elimina un recurso especificado del servidor.
  • HEAD : similar a GET , pero solo recupera los encabezados sin el contenido del cuerpo.
  • OPCIONES : proporciona información sobre las opciones de comunicación disponibles en el servidor.
  • PARCHE : actualiza parcialmente un recurso existente.
  • SEGUIMIENTO : se utiliza con fines de diagnóstico, haciendo eco de la solicitud recibida al cliente.
URL de solicitud * Proporciona la dirección web del servidor al que deseas enviar tu solicitud. Por ejemplo, https://store.example.com/search .
Parámetros Añada detalles específicos del servidor a su solicitud como pares clave-valor. Por ejemplo, query: "laptop" , sortBy: "price" .
Encabezados Añade instrucciones específicas del servidor o detalles de autenticación como pares clave-valor. Por ejemplo, Authorization: "Bearer <your_access_token>" , Accept: "application/json" .
Tipo de cuerpo de la solicitud *

Selecciona el tipo de contenido que quieres enviar al servidor:

  • Ninguno : no envía datos, normalmente para métodos de recuperación.
  • Texto : envía datos en texto sin formato, normalmente para métodos POST y PUT. Una vez seleccionados, se muestran los siguientes campos:
    • Tipo de contenido de texto : selecciona el formato del texto que deseas enviar en tu solicitud HTTP, para que el servidor sepa cómo interpretarlo:
      • texto/sin formato : texto sin formato regular.
      • text/html : texto en formato HTML.
      • text/css : texto en formato CSS.
      • text/csv : datos estructurados en formato CSV.
      • text/xml : texto en formato XML, destinado a ser leído por humanos.
      • aplicación/xml : texto en formato XML, destinado a que las aplicaciones lo procesen.
      • application/json : texto en formato JSON.
    • Texto : escribe el texto o los datos reales que deseas enviar en tu solicitud.
    • Codificación de texto : selecciona el formato de codificación para la carga útil de texto, como Unicode, ASCII o ISO. Esto garantiza que el servidor receptor lea con precisión tu carga útil de texto.
  • URL del formulario codificada : envía datos formateados como pares clave-valor simples. Una vez seleccionado, se muestra el siguiente campo:
    • Datos del formulario codificados en URL : proporciona los pares clave-valor. Por ejemplo, searchQuery: "Smartphone" , brand: "XYZ" , inStock: "true" .
  • Datos de formulario multiparte : envía archivos o datos complejos. Úsalo cuando necesites combinar diferentes tipos de datos en tu solicitud. Una vez seleccionados, se muestran los siguientes campos:
    • Archivos de recursos : proporciona el nombre de los archivos que se almacenan en tu proyecto como objetos IResource.
    • Archivos locales : proporciona la ruta a un archivo ubicado en tu dispositivo. Por ejemplo, "C:/Images/product-photo.jpg" .
    • Partes de datos del formulario : proporciona una colección de objetos FormDataPart :

      • ParteDeDatosDeFormularioDeTexto: para cargas útiles de cadena, como JSON o texto sin formato.
      • ParteDeDatosDeFormularioBinario : para matrices de bytes sin formato.
      • ParteDeDatosDeFormularioDeArchivo: para flujos de archivos basados en una ruta determinada.
      Por ejemplo, una colección FormDataPart utilizando el Editor de expresiones:
      #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")
      }
      

      Cada tipo FormDataPart viene con varios constructores, lo que te permite beneficiarte de los valores predeterminados de uso común.

      La actividad asigna automáticamente el encabezado Content-Type correcto para cada FileFormDataPart . Puedes anular este encabezado manualmente. Para las listas de archivos, no puedes anular el encabezado asignado automáticamente. Para las listas de archivos de recursos, la actividad utiliza el tipo MIME disponible.

    • Datos de formulario codificados en URL : proporciona pares clave-valor simples.
  • Binario : envía datos sin procesar. Una vez seleccionado, se muestra el siguiente campo:
    • Carga útil binaria : proporciona la carga útil de datos sin procesar, como imágenes, vídeos, archivos grandes o datos de transmisión. Por ejemplo: File.ReadAllBytes("C:/Images/product-image.jpg")
  • Transmisión : envía datos continuos, como cargar un archivo grande (audio o vídeo), cuando los datos no se pueden cargar por completo en la memoria a la vez. Una vez seleccionado, se muestra el siguiente campo:
    • Archivo local : proporciona la ruta del archivo grande. La actividad asigna automáticamente el encabezado de tipo de contenido correcto para el archivo cargado. Puedes anular este encabezado manualmente. Por ejemplo: File.OpenRead("C:/Videos/large-video.mp4")
Panel de propiedades

Importación de cURL y pruebas de tiempo de diseño

Esta sección te ayuda a configurar la actividad a través de los fragmentos de código cURL y a realizar pruebas de tiempo de diseño de la solicitud.

  • Texto del comando cURL : campo de texto multilínea en tiempo de diseño donde se puede pegar un comando cURL completo. Admite los estilos `cm y bash.
  • Botón de importación de cURL: botón de acción que desencadena inmediatamente el análisis/importación del texto de comando cURL actual en la actividad (método, URL, encabezados, cuerpo, autenticación, archivos).
  • Botón de solicitud de prueba: botón de acción que ejecuta la solicitud configurada en tiempo de diseño. Mientras se ejecuta, cambia a Cancelar. Al finalizar o cancelar, vuelve a Prueba y actualiza el campo Informe con respuesta formateada o error.
  • Informe: área de texto multilínea utilizada para mostrar el resultado de la última importación de cURL o ejecución de prueba en tiempo de diseño (resumen de éxito, detalles de asignación, advertencias o errores).

Opciones de cliente

Esta sección te ayuda a definir la configuración relacionada con la conexión.

  • Deshabilitar la verificación SSL : omite las comprobaciones de seguridad SSL. Útil para pruebas ( Verdadero ), no recomendado para producción ( Falso, predeterminado).
  • Protocolo TLS : selecciona el protocolo TLS para conexiones seguras. Las opciones disponibles son Automático (predeterminado), TLS 1.2 y TLS 1.3 .
  • Habilitar cookies : de forma predeterminada, habilita la gestión automática de cookies ( Verdadero ). Establécelo en Falso para deshabilitar la gestión automática de cookies.
  • Certificado de cliente : indica la ruta al certificado de cliente para la autenticación con API seguras. Por ejemplo, "C:/certificates/client-cert.pfx" .
  • Contraseña segura del certificado de cliente : almacena la contraseña segura para el certificado de cliente proporcionado. Por ejemplo, "certPassword" .

    Cambia entre contraseñas simples y seguras seleccionando el icono más y eligiendo la opción deseada: Usar cadena simple y Usar cadena segura .

  • Configuración de proxy : configura proxies personalizados, incluida la compatibilidad con la autenticación y las listas de omisión. Por ejemplo, "http://proxy.example.com:8080" .

Autenticación

Esta sección te ayuda a definir cómo se autentica la actividad con el servidor.

Autenticación : selecciona el método de autenticación. Las opciones disponibles son:
  • Sin autenticación : el servidor no requiere la validación del usuario para aceptar tu solicitud.
  • Autenticación básica : proporciona validación de usuario al servidor receptor a través de nombre de usuario y contraseña segura .

    Cambia entre contraseñas simples y seguras seleccionando el icono más y eligiendo la opción deseada: Usar cadena simple y Usar cadena segura .

  • Token de portador : proporciona validación de usuario al servidor receptor a través de un token de portador único generado después del inicio de sesión.
  • Autenticación negociada : utiliza el esquema de negociación HTTP para que el tiempo de ejecución seleccione Kerberos o NTLM (y opcionalmente Digest) en función de los desafíos del servidor. Cuando Autenticación se establece en Autenticación negociada y Usar credenciales del sistema operativo = True , se usa el contexto de usuario del sistema operativo actual (token de inicio de sesión de Windows; en Linux/macOS un ticket de Kerberos existente, por ejemplo, de kinit). Establece Usar credenciales del sistema operativo = Falso para habilitar el campo Credenciales personalizadas; proporcione una NetworkCredential (dominio/nombre de usuario/contraseña o contraseña segura).

Opciones de solicitud

Esta sección te ayuda a definir el comportamiento de la solicitud.

  • Cookies adicionales : especifica manualmente las cookies adicionales como pares clave-valor.
  • Tiempo de espera de la solicitud : especifica el tiempo de espera máximo, en milisegundos, antes de que se cancele la solicitud. El valor predeterminado es 10 000 milisegundos (10 segundos).
  • Continuar en caso de error : decide si la automatización debe continuar incluso cuando la actividad arroja un error ( Verdadero , opción predeterminada). Para detener la automatización cuando se produce un error, utiliza Falso .
  • Seguir redirecciones : decide si tu solicitud debe seguir automáticamente las redirecciones de URL proporcionadas por el servidor ( Verdadero , opción predeterminada). Para ignorar las redirecciones y utilizar la respuesta inicial, utiliza Falso .
  • Redirecciones máximas : especifica cuántas redirecciones automáticas debe seguir tu solicitud antes de detenerse. El valor predeterminado es 3.

Política de reintento

Esta sección te ayuda a definir el mecanismo de reintento en caso de fallo de la solicitud.

Tipo de política de reintento : especifica el método para reintentar las solicitudes. Las opciones disponibles son:
  • Sin reintento : tu solicitud llama al servidor solo una vez. Si falla, no se producen más intentos.
  • Reintento básico : reintenta la solicitud después de fallos utilizando un retraso fijo.
    • Recuento de reintentos : especifica el número de reintentos. El valor predeterminado es 3.
    • Retraso : especifica el tiempo fijo entre reintentos en milisegundos. El valor predeterminado es 500 milisegundos (0,5 segundos).
    • Usar encabezado Reintentar después : decide si la solicitud debe utilizar el encabezado Reintentar después recomendado por el servidor ( Verdadero , opción predeterminada). Para ignorar el valor del encabezado Reintentar-Después , utiliza Falso .
    • Límite de retraso : especifica el retraso máximo permitido entre reintentos-Después , en milisegundos. El valor predeterminado es 30 000 milisegundos (30 segundos).
    • Códigos de estado de reintento : especifica los códigos de estado que deben desencadenar reintentos.
  • Retroceso exponencial : reintentos con retrasos crecientes entre cada intento.
    • Recuento de reintentos : especifica el número de reintentos. El valor predeterminado es 3.
    • Retraso inicial : especifica el tiempo de retraso antes del primer reintento, en milisegundos. El valor predeterminado es 500 milisegundos (0,5 segundos).
    • Multiplicador : especifica el número utilizado para aumentar el retraso después de cada solicitud fallida. El valor predeterminado es 2, que duplica el retraso cada vez.
    • Usar fluctuación : para los retrasos, decide si quieres añadir un desplazamiento aleatorio entre 0 y 100 milisegundos para evitar reintentos sincronizados ( Verdadero , predeterminado).
    • Usar encabezado Reintentar después : decide si la solicitud debe utilizar el encabezado Reintentar después recomendado por el servidor ( Verdadero , opción predeterminada). Para ignorar el valor del encabezado Reintentar-Después , utiliza Falso .
    • Límite de retraso : especifica el retraso máximo permitido entre reintentos-Después , en milisegundos. El valor predeterminado es 30 000 milisegundos (30 segundos).
    • Códigos de estado de reintento : especifica los códigos de estado que deben desencadenar reintentos.

Opciones de respuesta

Esta sección te ayuda a personalizar la forma en que el servidor devolverá la respuesta.

  • Guardar siempre la respuesta como archivo : fuerza la escritura del cuerpo de la respuesta en el disco incluso cuando no se infiere un nombre de archivo adjunto.
  • Habilitar información de depuración : habilita la captura de depuración extendida (metadatos de solicitud/respuesta sin procesar, instantánea de encabezados, tiempo, detalles de reintento) y la salida al objeto de respuesta o durante las pruebas de tiempo de diseño.
  • Nombre del archivo de salida : anula el nombre de archivo proporcionado por el servidor (por ejemplo, de Content-Disposition).
  • Carpeta de destino del archivo de salida: carpeta de destino de control para los archivos de respuesta guardados.
  • Si el archivo ya existe: define la estrategia de colisión cuando ya existe un archivo con el nombre resuelto en la carpeta de destino. Opciones:
    • Cambio de nombre automático: anexa el sufijo incremental (_1, _2, …) para producir un nombre de archivo único.
    • Reemplazar: sobrescribe el archivo existente.
    • Detener y descartar:
    • Anula la operación de guardado (y el flujo de trabajo si no se gestiona la excepción) dejando el archivo existente intacto.
Nota:

La actividad solo admite un modo de salida a la vez: guardar la respuesta como archivo o devolver los datos de respuesta como texto. No se admite la configuración simultánea de ambas salidas.

Salida

Esta sección te ayuda a capturar y almacenar la respuesta devuelta por el servidor.

Contenido de la respuesta : captura la respuesta del servidor y la almacena en una variable, para su futuro procesamiento. Incluye:
  • CódigoDeEstado : código de estado de respuesta HTTP.
  • ContenidoDeTexto : respuesta como texto sin formato (si está disponible).
  • ContenidoBinario : datos de respuesta sin procesar para contenido que no es de texto.
  • Archivo : respuesta guardada como un archivo ( ILocalResource ) en tu carpeta de Descargas. El nombre del archivo proviene de los encabezados de respuesta o se genera automáticamente para evitar sobrescribir archivos.
  • Encabezados : todos los encabezados de respuesta HTTP.
  • EncabezadosDeContenido : encabezados específicamente relacionados con el contenido de la respuesta. Por ejemplo, Content-Type y Content-Length .
  • RawRequestDebuggingInfo: cadena opcional que contiene detalles de solicitud/respuesta de bajo nivel capturados (por ejemplo línea de solicitud construida, encabezados, reintentos, tiempo) se rellena solo cuando la depuración está habilitada; cadena vacía de lo contrario.

¿Te ha resultado útil esta página?

Conectar

¿Necesita ayuda? Soporte

¿Quiere aprender? UiPath Academy

¿Tiene alguna pregunta? Foro de UiPath

Manténgase actualizado