Servicio Web
Servicio Web
Servicio Web
Ir a la navegaciónIr a la búsqueda
Un servicio web (en inglés, web service o web services) es una tecnología que
utiliza un conjunto de protocolos y estándares que sirven para intercambiar datos
entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes
de programación diferentes, y ejecutadas sobre cualquier plataforma, pueden
utilizar los servicios web para intercambiar datos en redes de
ordenadores como Internet. La interoperabilidad se consigue mediante la adopción
de estándares abiertos. Las organizaciones OASIS y W3C son los comités
responsables de la arquitectura y reglamentación de los servicios Web.
El W3C define un servicio web como:
Un servicio web es un sistema software diseñado para soportar la interacción máquina-a-máquina, a
través de una red, de forma interoperable. Cuenta con una interfaz descrita en un formato procesable
por un equipo informático (específicamente en WSDL), a través de la que es posible interactuar con el
mismo mediante el intercambio de mensajes SOAP, típicamente transmitidos usando
serialización XML sobre HTTP conjuntamente con otros estándares web.
W3C1
Índice
1Arquitectura
2Estándares empleados
3Ventajas de los servicios web
4Inconvenientes de los servicios web
5Razones para crear servicios Web
6Plataformas
7Véase también
8Referencias
9Enlaces externos
Arquitectura[editar]
Arquitectura de los Servicios Web SOAP
Estándares empleados[editar]
Web Services Protocol Stack: conjunto de servicios y protocolos de los
servicios web.
XML (Extensible Markup Language): formato estándar para los datos que
se vayan a intercambiar.
SOAP (Simple Object Access Protocol) o XML-RPC (XML Remote
Procedure Call): protocolos sobre los que se establece el intercambio.
Otros protocolos: los datos en XML también pueden enviarse de una
aplicación a otra mediante protocolos normales como Hypertext Transfer
Protocol (HTTP), File Transfer Protocol (FTP), o Simple Mail Transfer
Protocol (SMTP).
WSDL (Web Services Description Language): es el lenguaje de la interfaz
pública para los servicios web. Es una descripción basada en XML de los
requisitos funcionales necesarios para establecer una comunicación con los
servicios web.
UDDI (Universal Description, Discovery and Integration): protocolo para
publicar la información de los servicios web. Permite comprobar qué servicios
web están disponibles.
WS-Security (Web Service Security): protocolo de seguridad aceptado
como estándar por OASIS (Organization for the Advancement of Structured
Information Standards). Garantiza la autenticación de los actores y la
confidencialidad de los mensajes enviados.
REST (Representational State Transfer): arquitectura que, haciendo uso del
protocolo HTTP, proporciona una API que utiliza cada uno de sus métodos
(GET, POST, PUT, DELETE, etcétera) para poder realizar diferentes
operaciones entre la aplicación que ofrece el servicio web y el cliente.
GraphQL, arquitectura alternativa a REST.
Plataformas[editar]
Servidores de aplicaciones para servicios Web:
Características[editar]
SOAP es un paradigma de mensajería de una dirección sin estado, que puede
ser utilizado para formar protocolos más completos y complejos según las
necesidades de las aplicaciones que lo implementan. Puede formar y construir la
capa base de una "pila de protocolos de web service", ofreciendo un framework de
mensajería básica en el cual los web services se pueden construir. Este protocolo
está basado en XML y se conforma de tres partes:
Modelo de procesado[editar]
El modelo de procesado de SOAP está definido como un sistema distribuido, en el
que intervienen diferentes nodos. En un escenario básico, los nodos SOAP se
comunican uno asumiendo el rol de SOAP Sender y otro el de SOAP Receiver.
Aun así, la especificación define diferentes tipos de nodos en función del rol que
asumen en el envío del mensaje:
Ventajas y desventajas[editar]
Ventajas[editar]
.NET: dentro del Framework se ofrecen herramientas similares a las de Java para
el diseño visual del servicio y la creación automática de WSDL . También da
soporte para la creación de los clientes a partir del fichero de definición del
servicio. En el caso de .NET, el IDE destacado es Visual Studio. En cuanto a
librerías encontramos que el ecosistema .NET ofrece múltiples opciones en varios
lenguajes, aunque la apuesta actual de Microsoft para el desarrollo web es
su Framework .NET MVC. Se debe tener en cuenta, que Microsoft creó el
formato Windows Communication Foundation que es un modelo para la
creación de sistemas orientados a servicios, similar y complementario al WSDL.
JSON
Ir a la navegaciónIr a la búsqueda
JSON
https://json.org/, https://json.org/json-fr.html y https://json.org/json-
it.html
Información general
Extendido de JavaScript
Formato abierto ?
1Nombre y pronunciación
2Sintaxis
3Modelos de procesamiento
4Uso de JSON
5Ejemplo de JSON
6Comparación con XML y otros lenguajes de marcado
7Véase también
8Referencias
9Enlaces externos
Nombre y pronunciación[editar]
En inglés, JSON se pronuncia de forma acronímica, como el nombre de la
letra J (jay, [dʒeɪ]) seguido de la sílaba «son». El resultado habitual, con la primera
sílaba tónica ([ˈdʒeɪsən]), se pronuncia igual que el nombre Jason,
aunque Douglas Crockford, desarrollador del formato JSON, marca como tónica la
segunda sílaba, como [dʒeɪˈsɒn].2
En español, se ha adaptado de varias maneras:
/ˈ͡ɟʝei̯ son/ («yéison»), por adaptación fonética del acrónimo en inglés como
"Yeison Bill";
/xotaˈson/ («jotasón»), como un calco del original solo que con el nombre
de la letra J en español (jota).3
Sintaxis[editar]
Los tipos de datos disponibles con JSON son:
Modelos de procesamiento[editar]
Al ser JSON un formato muy extendido para el intercambio de datos, se han
desarrollado API para distintos lenguajes (por ejemplo ActionScript, C, C+
+, C#, ColdFusion, Common
Lisp, Delphi, E, Eiffel, Java, JavaScript, ML, Objective-C, Objective
CAML, Perl, PHP, Python, Rebol, Ruby, Lua y Visual FoxPro) que permiten
analizar sintácticamente, generar, transformar y procesar este tipo de dato.
Los modelos de programación más utilizados para tratar con JSON en los distintos
lenguajes son:4
Uso de JSON[editar]
En teoría, es trivial analizar JSON en JavaScript usando la
función JSON.parse() incorporada en el lenguaje. Por ejemplo:
miObjeto = JSON.parse(json_datos);
function handle_json() {
if (http_request.readyState == 4) {
if (http_request.status == 200) {
var json_data = http_request.responseText;
var the_object = eval("(" + json_data + ")");
} else {
alert("Ocurrió un problema con la URL.");
}
http_request = null;
}
}
Ejemplo de JSON[editar]
A continuación se muestra un ejemplo simple de definición de barra de menús
usando JSON y XML.
JSON:
{
"menu": {
"id": "file",
"value": "File",
"popup": {
"menuitems": [
{
"value": "New", "onclick": "CreateNewDoc()"
},{
"value": "Open", "onclick": "OpenDoc()"
},{
"value": "Close", "onclick": "CloseDoc()"
}
]
}
}
}