Petición web
Genera una petición a servicios web, URLs o cualquier sistema basado en el protocolo web HTTP/HTTPS.
Campos¶
- URL - La URL destino
- Método - El método HTTP para usar, generalmente
GET,POST,PUToDELETE - Encoding - El tipo de codificación, se recomienda
utf-8, pero hay otros disponibles como:ansi,iso-8859-15, etc. - Timeout - Establece el tiempo de espera para las respuestas del servidor (en segundos).
- Usuario - [opcional] El usuario a utilizar para la autenticación HTTP de las peticiones.
- Contraseña: [opcional] La contraseña a utilizar para la autenticación HTTP de las peticiones.
- Aceptar de cualquier servidor certificado - Comprueba si el certificados inválidos HTTP/SSL están permitidos.
Datos¶
Argumentos formales¶
Introduzca pares de clave valor como argumentos de la petición HTTP.
Esto se enviará en la solicitud como una sección de formulario..
Cabeceras¶
Introduzca pares clave-valor para cada valor de la cabecera de la petición HTTP.
Algunos de los parámetros comunes que se pueden establecer aquí son:
Content-Type- El tipo de contenido que se envía, comoapplication/jsonoapplication/x-www-form-urlencodeddependiendo de lo que se haya establecido en el servidor destino.Content-Length- El tamaño del contenido (debería ser establecido por Clarive).User-Agent- Identifica quién está llamando al servicio.Cookie- Establece las cookies al otro lado.
Aquí hay una lista de los campos de cabecera que se pueden añadir:
https://en.wikipedia.org/wiki/List_of_HTTP_header_fields
Body¶
Datos que se enviarán en el cuerpo de la petición como datos JSON.
Enviando una petición JSON¶
Por ejemplo, para descargar la variable stash llamada mivar a un string JSON, hay que poner lo sisguiente en el cuerpo
de la petición:
${json(mivar)}
El cual realiza una representación en JSON de la variable mivar.
Añadiendo el siguiente par clave-valor a la sección de Cabecera estaría todo listo:
Content-Type ==> application/json
Enviar una petición SOAP¶
Para enviar una petición SOAP, es mejor crear una plantilla para el body que contenga la estructura XML que es necesaria para su servidor SOAP.
Esto es un ejemplo de una plantilla XML de petición SOAP, con una variable mivar que se paseará con los datos del
stash antes de ser enviada.
<?xml version="1.0"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2001/12/soap-envelope" SOAP-ENV:encodingStyle="http://www.w3.org/2001/12/soap-encoding" > <SOAP-ENV:Body xmlns:m="http://www.xyz.org/quotations" > <m:GetQuotation> <m:QuotationsName>${mivar}</m:QuotationsName> </m:GetQuotation> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
Ahora, añada el siguiente clave-valor a la sección de Cabecera:
Content-Type=>text/xml; charset=utf-8
SOAP 1.1 Tester¶
Este es un buen test para una llamada a SOAP 1.1:
- URL:
http://www.webservicex.net/globalweather.asmx?op=GetWeather - Method:
POST
Cabecera:
Content-Type=>text/xml; charset=utf-8,SOAPAction=>"http://www.webserviceX.NET/GetWeather"
Cuerpo:
<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <GetWeather xmlns="http://www.webserviceX.NET"> <CityName>string</CityName> <CountryName>string</CountryName> </GetWeather> </soap:Body> </soap:Envelope>
SOAP 1.2 Tester¶
- URL:
http://www.webservicex.net/globalweather.asmx?op=GetWeather - Method:
POST
Cabecera:
Content-Type=>application/soap+xml; charset=utf-8
Cuerpo:
<?xml version="1.0" encoding="utf-8"?> <soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope"> <soap12:Body> <GetWeather xmlns="http://www.webserviceX.NET"> <CityName>string</CityName> <CountryName>string</CountryName> </GetWeather> </soap12:Body> </soap12:Envelope>