| | |
Nombre de la propiedad | Tipo utilizado | Efecto |
---|
Authentication | Constante de tipo Integer | Define el método de autenticación requerido para acceder a los recursos de un determinado servidor o sitio web: - auBasic: El nombre y la contraseña se pasan como texto plano en la solicitud.
- auDigest: El nombre y la contraseña se codifican en la solicitud utilizando un algoritmo de hash.
- auNegotiate: El cliente y el servidor intercambian cierta información antes de establecer una conexión. Kerberos es el protocolo de autenticación predeterminado. Si no está disponible, se utiliza el protocolo NTLM.
- auNTLM: El cliente y el servidor intercambian cierta información antes de establecer una conexión mediante el protocolo NTLM (solo Windows).
Nota: Aunque todavía se utiliza ampliamente, no se recomienda utilizar el protocolo NTLM. |
AuthToken | Variable de tipo AuthToken | Token de acceso al servicio web que se utilizará para la autenticación mediante el protocolo OAuth 2.0. Este token de acceso se obtiene con la función AuthIdentify. El token de acceso se pasa automáticamente a la función access_token en la URL. Si este parámetro debe ser diferente, debe construir la URL http. |
Cabecera | Associative array of strings | Conjunto de clave/valor de los encabezados que se enviarán. Ejemplo de uso de esta propiedad: cMaRequête is httpRequest
cMaRequête.Header["Authorization"] = ...
" WSSE profile=""UsernameToken"""
cMaRequête.Header["X-WSSE"] = ...
"UsernameToken Username=blahblah "
cMaRequête.Header["Cache-Control"] = " no-cache"
Cambios de comportamiento a partir de la versión 29 - Update 3: - Antes de la versión 29 - Update 3, no se enviaban encabezados vacíos.
- A partir de la versión 29 - Update 3, se envían encabezados vacíos. Ejemplo:
req is httpRequest
req.Header["Vide"] = ""
req.Send()
Ahora, el encabezado "Vacío" se pasa al servidor cuando se envía la solicitud, y su valor es una cadena vacía.
|
ClientCertificate | String o Buffer | Corresponde a: - una cadena de caracteres con una ruta de acceso al archivo .p12 que contiene el certificado que debe adjuntarse a la solicitud. El certificado se cargará automáticamente teniendo en cuenta:
- el certificado que se encuentra en la biblioteca del archivo ejecutable (si se ha integrado en la aplicación),
- el certificado que se encuentra en la ubicación especificada del disco (si el certificado no se ha integrado en la biblioteca del archivo ejecutable).
- un búfer con el certificado (función fLoadBuffer).
Si esta propiedad es una cadena vacía (""), el certificado predeterminado se restablece en "<None>". |
ClientCertificatePassword | Character string o Secret string | Contraseña asociada al certificado de cliente (cadena vacía de forma predeterminada).
Novedad versión 2025Cadenas secretas: Si utiliza el almacén de cadenas secretas, el tipo de cadena secreta utilizado para este parámetro debe ser "ANSI string - Latin". Para obtener más información sobre las cadenas secretas y el almacén, consulte Almacén de cadenas secretas. |
ConnectionTimeout | Integer | Tiempo máximo de espera para la conexión expresado en milisegundos (de forma predeterminada 20 segundos, es decir, 20000 milisegundos). Esta propiedad puede corresponder a: - un número entero que representa el número de milisegundos,
- una variable de tipo Duration,
- la duración en un formato legible (por ejemplo, '20s' o '20000ms').
Si al final del tiempo de espera establecido no se puede establecer la conexión (la función RESTSend devolverá un error, en la variable de resultado de tipo restResponse). |
Content | Buffer | Mensaje HTTP que se enviará al servidor. Esta propiedad solo se tiene en cuenta si el método de envío (propiedad Method) lo permite. El mensaje que se envíe debe cumplir el protocolo HTTP utilizado. De forma predeterminada, si se especifica esta propiedad, se utiliza una solicitud POST; en caso contrario, se utiliza el método GET. |
ContentType | Character string | Tipo de contenido del mensaje HTTP que se enviará al servidor. Esta propiedad solo se tiene en cuenta si el método de envío (propiedad Method) lo permite. De forma predeterminada, el tipo de mensaje corresponde a "application/x-www-form-urlencoded". Sin embargo, puede utilizar cualquier valor, por ejemplo "text/xml", "application/javascript", "application/json", "application/xml", "image/jpeg", etc. Para enviar datos sin procesar, que serán leídos en una sola operación por WEBDEV Application Server, utilice los siguientes tipos: - "application/octet-stream".
- "text/xml".
|
Destination | Character string | Ruta completa del archivo de copia de seguridad del resultado de la solicitud HTTP. |
DownloadProgress | Variable de tipo httpProgress | Notificación del progreso de la recepción de datos. |
IgnoreError | Constante de tipo Integer | Especifica los errores ignorados. Corresponde a una constante o combinación de constantes:- httpIgnoreInvalidCertificate: Se ignora el certificado.
- httpIgnoreInvalidCertificateName: Se ignora el nombre del sitio especificado en el certificado.
- httpIgnoreExpiredCertificate: Se ignora la fecha del certificado.
- httpIgnoreDeprecated: Ignora los errores relacionados con el uso de algoritmos obsoletos (por ejemplo, la firma de certificados SHA-1).
- httpIgnoreRedirection: Se ignora la redirección a una página.
- httpIgnoreRedirectToHTTP: Se permite la redirección a un servidor no seguro.
- httpIgnoreRedirectToHTTPS: Se permite la redirección a un servidor seguro.
- httpIgnoreUnsafeRenegotiation: Ignora el error que indica que el servidor no admite la renegociación segura (RFC 5746).
- httpIgnoreRevocation: Se ignora la verificación de la lista de certificados revocados.
|
MaxDownloadRate | Integer | Velocidad máxima de descarga de datos en kilobytes por segundo. Esta velocidad se indica a título informativo. 0 (valor predeterminado) significa que esta velocidad no está limitada. |
MaxUploadRate | Integer | Velocidad máxima de subida de datos en kilobytes por segundo. Esta velocidad se indica a título informativo. 0 (valor predeterminado) significa que esta velocidad no está limitada. |
Método | Constante de tipo Integer | Método HTTP utilizado: - httpCopy: Método COPY (valor 7).
- httpDelete: Método DELETE (valor 4).
- httpGet: Método GET (valor 1).
- httpHead: Método HEAD (valor 5).
- httpLock: Método LOCK (valor 12) (protocolo WebDAV).
- httpMkCol: Método MKCOL (valor 10) (protocolo WebDAV).
- httpMove: Método MOVE (valor 11) (protocolo WebDAV).
- httpPatch: Método PATCH (valor 6).
- httpPost: Método POST (valor 2).
- httpPropFind: Método PROPFIND (valor 8) (protocolo WebDAV).
- httpPropPatch: Método PROPPATCH (valor 9) (protocolo WebDAV).
- httpPut: Método PUT (valor 3).
- httpUnlock: Método UNLOCK (valor 13) (protocolo WebDAV).
De forma predeterminada, si la propiedad Content no está vacía, se utiliza el método httpPost. De lo contrario, se utiliza el método httpGet. |
Password | Character string o Secret string | Contraseña asociada al nombre de usuario (de forma predeterminada se utiliza una cadena vacía). Permite acceder a una página con una URL protegida. Atención: La contraseña no se cifra cuando se envía por Internet.Nota: Si se especifican las propiedades UserName y Password, el encabezado "Authorization:Basic" correspondiente se genera automáticamente en el encabezado de la solicitud. Novedad versión 2025Cadenas secretas: Si utiliza el almacén de cadenas secretas, el tipo de cadena secreta utilizado para este parámetro debe ser "ANSI o Unicode string". Para obtener más información sobre las cadenas secretas y el almacén, consulte Almacén de cadenas secretas. |
New in SaaSProcedureData | Procedure | Nombre del procedimiento WLanguage llamado al recibir los datos. Este procedimiento puede utilizarse para recibir progresivamente una respuesta HTTP, por ejemplo, cuando el servidor devuelve una respuesta en fragmentos o de gran tamaño Este procedimiento tiene el siguiente formato: PROCEDURE <Procedure name>(<Chunk> is Buffer) donde <Chunk> corresponde a los datos recibidos. Si este procedimiento devuelve False, se cancela la solicitud así como la recepción de los datos. Ejemplo de procedimiento: PROCEDURE procDonnées(bufMorceau is Buffer)
Trace("Je traite [%Taille(bufMorceau)%] octets de données")
Trace(UTF8ToString(bufMorceau))
Trace("----------------------")
|
New in SaaSProcedureHeader | Procedure | Nombre del procedimiento WLanguage al que se llamará solo si la solicitud se realiza correctamente (código de respuesta HTTP entre 200 y 299). Este procedimiento puede utilizarse cuando el servidor devuelve una respuesta en fragmentos o de gran tamaño.Este procedimiento tiene el siguiente formato: PROCEDURE <Procedure name>(<Response> is httpResponse) donde <Response> corresponde a las características avanzadas de la respuesta. Ejemplo de procedimiento: PROCEDURE procEntete(cMonEntête is httpResponse)
Trace("ProcédureEntête")
IF 200 <= cMonEntête.StatusCode _AND_
cMonEntête.StatusCode <= 299 THEN
Trace("OK")
ELSE
Trace("Erreur")
END
Trace(cMonEntête.RawHeader)
Trace("----------------------")
Nota: Los encabezados de redirección no desencadenan el procedimiento. |
ProcedureTrace | Procedure | Nombre del procedimiento WLanguage utilizado para identificar los datos y los encabezados que se han enviado y recibido. Este procedimiento tiene el siguiente formato:
PROCEDURE <Procedure name>(<InfoType> is int, <Data> is Buffer) donde: - <InfoType> es una constante de tipo Integer que corresponde al tipo de datos:
- httpTraceDataSent: Datos enviados.
- httpTraceDataReceived: Datos recibidos..
- httpTraceHeaderSent: Encabezado enviado.
- httpTraceHeaderReceived: Encabezado recibido.
- httpTraceInfo: Información detallada sobre la ejecución de la solicitud (error cURL/OpenSSL de bajo nivel, etapa en curso, advertencias, etc.).
- <Data> es un búfer que contiene la información.
Ejemplo de procedimiento: PROCEDURE ProcTrace(nTypeInfo is int, ...
bufByData is Buffer)
SWITCH nTypeInfo
CASE httpTraceHeaderSent:
Trace("Entête : ", ...
UTF8ToString(bufByData))
CASE httpTraceDataSent:
Trace("Données : ", ...
bufByData)
CASE httpTraceHeaderReceived:
Trace("Entête reçu : ", ...
UTF8ToString(bufByData))
CASE httpTraceDataReceived:
Trace("Données reçues : ", ...
bufByData)
END
|
| Boolean | Indica si la propiedad Content corresponde al contenido en bruto:- True: La propiedad Content corresponde a un búfer. No se realizan cambios.
- False (predeterminado): El contenido es modificado por el navegador. En particular, el texto UTF-8 se descodifica automáticamente. La propiedad Content devuelve el resultado en forma de cadena.
|
SelectedCipher | Character string | Nombre del cifrado seleccionado para la solicitud segura. Esta propiedad está disponible en modo de solo lectura. |
SelectedSSLVersion | Constante de tipo Integer | Versión del protocolo SSL elegida para una solicitud segura: - ProtocolDefault: Protocolo predeterminado (TLS 1.2).
- ProtocolTLS1: Protocolo TLS1.
- ProtocolTLS1_1: Protocolo TLS1.1.
- ProtocolTLS1_2: Protocolo TLS1.2.
- ProtocolTLS1_3: Protocolo TLS1.3.
Esta propiedad está disponible en modo de solo lectura. |
Timeout | Integer | Tiempo máximo de respuesta (en milisegundos). Esta propiedad puede corresponder a: - un número entero que representa el número de milisegundos,
- una variable de tipo Duration,
- la duración en un formato legible (por ejemplo, '1s' o '10ms').
De forma predeterminada, esta propiedad se establece en 20 segundos. Nota: El tiempo de espera definido con la función HTTPTimeOut no influye en esta propiedad. |
UploadProgress | Variable de tipo httpProgress | Notificación del estado de progreso al cargar datos POST. |
URL | Character string | Dirección del servidor al que se enviará la solicitud (dirección URL). Esta URL puede contener: - el número de puerto para conectarse al servidor.
De forma predeterminada, los servidores HTTP que alojan páginas web utilizan el puerto 80, mientras que los servidores HTTPS utilizan el puerto 443. Para especificar un número de puerto, use el siguiente formato: "<URL del servidor>:<Número de puerto>". Por ejemplo: "http://www.windev.es:80". - parámetros adicionales. Estos parámetros pueden utilizarse para realizar una búsqueda o rellenar un formulario. Por ejemplo, para buscar "windev" en "http://www.google.com", la URL sería "http://www.google.com/search?q=windev".
Observaciones: - Para especificar tanto el número de puerto como los parámetros adicionales, utilice el formato "<URL del servidor>:<Número de puerto>/<Parámetros adicionales>".
- Para realizar una transacción segura, la URL debe comenzar por "https://". En este caso, las solicitudes siempre se gestionan a través de Internet Explorer (para más información, consulte HTTPConfigure).
|
User | Character string | Nombre utilizado para acceder a una página con una URL protegida (cadena vacía de forma predeterminada). Este nombre identifica al usuario. Nota: Si se especifican las propiedades User y Password, el encabezado "Authorization:Basic" correspondiente se genera automáticamente en el encabezado de la solicitud. |
UserAgent | Character string | Identifica el cliente. De forma predeterminada, este valor corresponde al nombre de la aplicación. El contenido de la respuesta depende del agente de usuario (por ejemplo, una solicitud procedente de una PalmPilot requiere páginas diferentes que una solicitud enviada desde un navegador). Para obtener más información, consulte la documentación sobre el agente de usuario. |
VersionHTTP | Constante de tipo Integer | Versión HTTP utilizada por el servidor: - httpVersion2: HTTP 2.0. Si el servidor no admite esta versión, se utiliza una versión anterior.
- httpVersion2Only: Fuerza HTTP 2.0. Si el servidor no admite esta versión, aparece un error fatal.
- httpVersion1_1: HTTP 1.1.
- httpVersion1_0: HTTP 1.0.
- httpVersionDefault: HTTP 1.0.
|
VersionSSL | Constante de tipo Integer | Versión mínima y máxima admitida para el protocolo SSL. Para establecer las versiones mínima y máxima de TLS entre 1.1 y 1.3, simplemente especifique las constantes ProtocolTLS1_1 + ProtocolTLS1_3 Se pueden utilizar las siguientes constantes: - ProtocolDefault: Protocolo predeterminado. Versión máxima admitida (o una versión inferior si el servidor no admite este protocolo).
- ProtocolTLS1: Protocolo TLS1.
- ProtocolTLS1_1: Protocolo TLS1.1.
- ProtocolTLS1_2: Protocolo TLS1.2.
- ProtocolTLS1_3: Protocolo TLS1.3.
|