Documentos de Académico
Documentos de Profesional
Documentos de Cultura
¿Qué es?
(https://www.w3.org/2002/ws/Activity)
OASIS Organization of Advancement Structured Information
Standards => http://www.oasis-open.org
IETF Internet Engineering Task Force => http://www.ietf.org
ISO International Organization of Standarization =>
http://www.iso.org
WebServices Protocol Stack (https://www.oreilly.com/library/view/web-services-
essentials/0596002246/ch01s02s02.html) Considera las capas involucradas en el
funcionamiento de un WebService. Dichas capas son:
Servicio de transporte. Define el protocolo usado para la
comunicación entre las partes. (HTTP, SMTP, FTP, BEEP)
Mensajería XML. Es la encargada de codificar los mensajes usando
XML para que el cliente pueda entender su contenido. (XML-RPC y
SOAP).
Descripción del Servicio. Es la empleada para describir el servicio
disponible en el servidor. (WSDL).
Descubrimiento de Servicio. Es el encargado de conjugar diversos
servicios en un registro además de publicar funciones fáciles de
publicación / encuentro. (UDDI)
XML (https://www.ecured.cu/XML) eXtensible Markup Language
consiste en un conjunto de reglas para presentar información
de forma fácil y procesable por computador. La intención es
manifestar estas propiedades en la comunicación en Internet.
Originalmente fue usado para la publicación de información
electrónica además de ser definido como la base de
comunicación entre tecnologías que usan como medio de
comunicación a Internet.
Fácil de usar e implementar, requiere de un parser para
interpretar su contenido.
SOAP (https://www.ecured.cu/XML) Simple Object Access Protocol En
principio este medio de comunicación permitía enviar ordenes
a un servidor RPC mediante protocolo HTTP. Los mensajes eran
codificados usando XML .
La intención es ofrecer un mecanismo para empaquetar
mensajes y facilitar la forma en la que se llevan a cabo las
comunicaciones cliente-servidor.
Es uno de los protocolos mas rápidamente adaptado por las
grandes compañías de tecnología. (Sun, IBM, SAP, etc).
WSDL (Web Services Description Language) es una notación
usada para describir un servicio web. La intención es indicar al
cliente la forma en la que debe llevar a cabo una petición a un
WebService de manera apropiada, además de describir la
descripción de la interfaz utilizada.
Permite separar la descripción de la funcionalidad con el
objetivo de permitir obtener la información administrada por
el servidor, sin tener que saber realmente como lo hace.
UDDI (Universal Description, Discovery and Integration)es una
forma de encontrar y publicar servicios disponibles en un
Webservice.
Es una especificación creada con el propósito de ofrecer
información sobre empresas y servicios en un directorio API y
una forma para replicar en diversos directorios de este tipo
esta misma información.
Los registros UDDI son una forma de distribuir esta información
mediante formatos XML a modo de consulta sobre la
información de las empresas registradas en ellos.
WS-Security Es un conjunto de mejoras que se pueden implementar
en una infraestructura SOAP para implementar seguridad en la
transmisión de los mensajes gestionados por este tipo de servicios.
Usa dos mecanismos.
Integridad y confidencialidad de los mensajes.
Autenticación de un mensaje individual.
La intención es usar tokens en cada uno de los intercambios de
información.
Esta especificación soporta diversos tipos de generación de claves,
pero no define un esquema completo de seguridad en si mismo. Es
necesario implementar otros elementos en conjunto para este
propósito.
Es un enfoque de desarrollo introducido en la década de los 2000 por el
padre de las especificaciones HTTP, Roy Fielding.
REST – Representational State Transfer, es un tipo de arquitectura que
se apoya principalmente en el protocolo HTTP y define un conjunto de
arquitecturas para la construcción de un API.
Muchas plataformas conocidas como las redes sociales, Facebook,
twitter o plataformas de contenido multimedia como Youtube,
disponen de este tipo de servicios para ofrecer a desarrolladores en la
web la posibilidad de desplegar recursos como contenido a otras
plataformas, ayudando así a que su consumo pueda realizarse en otros
sitios web u otros tipos de plataformas.
Es una alternativa a la implementación de servicios diferente a SOAP, e
igualmente soporta lenguajes como XML y JSON.
Comunicaciones cliente/servidor sin estado. No
necesariamente deben guardar estados para llevarse a cabo.
Este tipo de controles, se puede llevar a cabo internamente y
es independiente de técnicas de seguridad.
Debido al uso de HTTP, se especifican las acciones PUT, DELETE,
POST, GET para especificar una acción en concreto.
Los elementos son siempre manipulados a través de una URI
(Unified Resource Identifier) para facilitar el acceso a la
información.
Gracias al uso de las acciones HTTP, se hace uso de una interfaz
uniforme para llevar a cabo las comunicaciones.
Es el protocolo base de intercambio de información utilizado en
Internet, basado en comunicaciones cliente / servidor.
Es un protocolo de capa de aplicación y se usa sobre los
protocolos de TCP o TLS (en capa de transporte).
Es un protocolo pensado para ser implementado e interpretado
fácilmente, haciendo mas fácil la depuración de errores y
reduciendo las dificultades de aprendizaje.
Por su facilidad de implementación, es fácil ampliar la
funcionalidad que con este se puede lograr.
Es un protocolo pensado para manejo de sesiones, pero no de
estados, por lo que en ninguna de las dos partes se mantiene este
tipo de datos.
17 09/13/20 Propiedad intelectual de la UNIVERSIDAD PILOTO DE COLOMBIA® - Año 2017
20
Flujo HTTP
(https://developer.mozilla.org/es/docs/Web/HTTP/Overview)
Para llevar a cabo la comunicación mediante este protocolo
deberían seguirse los siguientes pasos.
1) Apertura de conexión TCP. Establecimiento de una o varias
conexiones con el servidor y rechazar de conexiones.
2) Petición HTTP.
Una petición es conformada por los siguientes campos.
Un método HTTP, que puede ser GET, POST, PUT, DELETE, o
un nombre como HEAD, OPTIONS, que define la operación
que el cliente desea realizar.
La dirección del recurso en una URL.
La versión del protocolo a usar.
Cabeceras opcionales.
Cuerpo de mensaje.
Una respuesta esta conformada por los siguientes campos.
Versión de protocolo utilizada.
Código de estado.
(https://developer.mozilla.org/es/docs/Web/HTTP/Status)
Breve descripción de código de estado.
Cabecera HTTP.
Opcional, recurso solicitado.