Imagine que está desarrollando una aplicación web y decide desacoplar la funcionalidad de la presentación de la aplicación, ya que ofrece una mayor libertad.
Usted crea una API y deja que otros implementen sus propios front-end también. Lo que acaba de hacer aquí es implementar una metodología SOA , es decir, usar servicios web.
Los servicios web hacen que los bloques funcionales sean accesibles a través de protocolos estándar de Internet, independientemente de las plataformas y los lenguajes de programación.
Entonces, diseña un mecanismo de intercambio entre el back-end (servicio web) que realiza el procesamiento y la generación de algo útil, y el front-end (que consume los datos), que podría ser cualquier cosa. (Una aplicación web, móvil o de escritorio, u otro servicio web). La única limitación aquí es que el front-end y el back-end deben "hablar" el mismo "idioma".
Ahí es donde intervienen SOAP y REST. Son formas estándar en las que elegiría comunicarse con el servicio web.
JABÓN:
SOAP utiliza internamente XML para enviar datos de un lado a otro. Los mensajes SOAP tienen una estructura rígida y el XML de respuesta debe analizarse.
WSDL es una especificación de qué solicitudes se pueden realizar, con qué parámetros y qué devolverán. Es una especificación completa de su API.
DESCANSO:
REST es un concepto de diseño.
La World Wide Web representa la implementación más grande de un sistema conforme al estilo arquitectónico REST.
No es tan rígido como el jabón. Los servicios web RESTful utilizan métodos y URI estándar para realizar llamadas al servicio web. Cuando solicita un URI, devuelve la representación de un objeto, sobre el que puede realizar operaciones (por ejemplo, GET, PUT, POST, DELETE). No está limitado a elegir XML para representar datos, puede elegir cualquier cosa realmente (JSON incluido)
La API REST de Flickr va más allá y le permite devolver imágenes también.
JSON y XML son funcionalmente equivalentes y opciones comunes. También hay marcos basados en RPC como GRPC basado en Protobufs y Apache Thrift que se pueden usar para la comunicación entre los productores y consumidores de API. El formato más común utilizado por las API web es JSON debido a que es fácil de usar y analizar en todos los idiomas.
WSDL : significa lenguaje de descripción de servicio web
En SOAP (protocolo simple de acceso a objetos), cuando utiliza un servicio web y agrega un servicio web a su proyecto, su (s) aplicación (es) cliente (s) no conocen las Funciones del servicio web. Hoy en día es algo anticuado y para cada tipo de cliente diferente tienes que implementar diferentes
WSDL
archivos. Por ejemplo, no puede usar el mismo archivo.Net
yphp
cliente. ElWSDL
archivo tiene algunas descripciones sobre las funciones del servicio web. El tipo de este archivo esXML
.SOAP
Es una alternativa paraREST
.RESTO : significa transferencia de estado representativo
Es otro tipo de servicio API, es realmente fácil de usar para los clientes. No necesitan tener una extensión de archivo especial como
WSDL
archivos. La operación CRUD puede implementarse de diferentesHTTP Verbs
maneras (GET para lectura, POST para creación, PUT o PATCH para actualizar y DELETE para eliminar el documento deseado), se basan en elHTTP
protocolo y la mayoría de las veces la respuesta está en formatoJSON
oXML
. Por otro lado, la aplicación cliente debe llamar exactamente a los relacionados aHTTP Verb
través de nombres y tipos de parámetros exactos. Debido a que no tiene un archivo especial para la definición,WSDL
es un trabajo manual que utiliza el punto final. Pero no es gran cosa porque ahora tenemos muchos complementos para diferentes IDE para generar la implementación del lado del cliente.SOA : significa arquitectura orientada a servicios
Incluye toda la programación con conceptos y arquitectura de servicios web. Imagine que desea implementar una aplicación a gran escala. Una práctica puede ser tener algunos servicios diferentes, llamados microservicios, y todo el mecanismo de la aplicación estaría llamando al servicio web necesario en el momento adecuado. Ambos
REST
ySOAP
los servicios web son algo asíSOA
.JSON : significa
javascript Object Notation
cuando serializa un objeto para javascript, el tipo de formato de objeto es JSON. imagina que tienes la clase humana:
y tienes algunas instancias de esta clase:
cuando serializa el objeto h1 a JSON, el resultado es:
javascript
puede evaluar este formato poreval()
función y hacer una matriz asociativa a partir de estaJSON
cadena. Este es un concepto diferente en comparación con otros conceptos que describí anteriormente.fuente