Interpretación de la definición y Filosofía de la DESCANSO

Definición y comprensión de la Filosofía de REST

  

REST es un tema controvertido entre los entusiastas de servicios Web, porque se considera que representan lo contrario de lo que los servicios Web y SOA están tratando de lograr. El problema con este pensamiento es que el resto no está en contradicción con la definición abstracta de la arquitectura SOA y servicios Web. Resto está en contradicción con tecnologías tales como SOAP, WSDL, WS-* y especificaciones. A continuación se ofrece una definición rápida de descanso: REST es sobre el diseño de bases de datos, y SOAP es sobre el diseño de la API. La definición en sí misma es objeto de controversia, como muchos han señalado que SOAP se puede utilizar para crear el documento servicios basedWeb. Sin embargo, pasan por alto el hecho de que el reposo no se refiere a los datos enviados entre el cliente y el servidor. Se refiere a la forma de abordar y enviar o recibir los datos. Digamos que usted está escribiendo un servicio web SOAP, lo que significa que será el diseño de un documento WSDL. WSDL en sí misma implica la definición de un punto de acceso con las operaciones, o en la programación términos lingüísticos, las API. Las API pueden apoyar la transferencia de documentos, pero las operaciones de WSDL son las API. Esto no es una cosa mala, sólo un punto de referencia para decir que se trata de SOAP REST APIs. Trata de utilizar el protocolo HTTP para manipular el estado indicado por un recurso. El lenguaje de programación SQL se utiliza para manipular los datos relacionales. En el lenguaje SQL, los verbos, tales como INSERT, SELECT, UPDATE, y DELETE, realizar acciones en los datos. RESTO utiliza estos verbos, pero son los verbos HTTP: PUT, POST, GET, y DELETE. Todo lo que usted necesita hacer para que los datos pueden ser expresados en los verbos, sin importar si usted está utilizando HTTP o SQL. Otra diferencia entre el diseño de bases de datos y el diseño de la API es que con el diseño de base de datos, se trabaja con series.

Los grupos pueden no tener uno, o muchos elementos. El recuento no importa. Con las API, el número de elementos no importa, porque es necesario crear explícitamente API que manipulan o no, uno o varios elementos. Ninguna de estas comparaciones son para decir que uno es bueno y el otro es malo. En cambio, están destinados a ilustrar que REST y SOAP son muy diferentes en sus planteamientos. Toda esta teoría suena como agitar la mano, así que la mejor manera de explicar la teoría es implementar un servicio utilizando REST. La aplicación de la calculadora ejemplo, comienza con un enfoque tradicional de la API, convierte la aplicación en un enfoque REST preliminar, y luego transforma la primera solución en una solución completa REST de pleno derecho. La solución RESTO preliminar se muestra para demostrar que no todas las soluciones RESTO aprovechar todas las características de descanso. La calculadora sólo es compatible con la memoria y la suma de dos números. El servidor añade los dos números y genera un resultado. Para agregar un nuevo conjunto de números, debe hacer clic en el botón Atrás y entre dos números diferentes. Desde una perspectiva de transformación, representa el flujo entre llamar a la página HTML, enviar los datos al servidor, y luego generar el resultado. En una aplicación Web tradicional, cuando el usuario hace clic en el botón Enviar, los datos del formulario HTML (es decir, la contenido de los dos cuadros de texto) se recoge y se envía al servidor mediante un HTTP POST. El servidor lee y procesa los datos para generar la respuesta en forma de una página HTML.

Los resultados de la POST son fijos. Esto significa que cualquier página HTML con un formulario HTML, puede llamar al servidor de la página de generación de lado, pero el resultado es predefinido. En el ejemplo, el resultado tiene que ser una página HTML que se pueden generar en una página HTML. El problema es que para generar un resultado adecuado, el servidor tiene que tener en cuenta las hojas de estilo, así como otra mirada y sensación atributos. Si lo piensas bien, el propósito general del lado del servidor POST es generar un resultado a una consulta. Por supuesto, el servidor podría utilizar algunas técnicas para generar los datos correctos en el contexto correcto. Eso ha llevado a los marcos sofisticados que tratan de "arreglar" el problema de publicar contenido. Esto es lo que hace Ajax como un argumento de peso en el desarrollo de aplicaciones Web. Ajax se centra en el envío y recepción de los contenidos necesarios, no los bits extra que no tienen nada que ver con el contenido. Cuando se utiliza AJAX, la página inicial sigue siendo descargado, pero la naturaleza de los cambios HTTP POST. El mismo puesto que HTTP es enviado, pero la respuesta no tiene que incluir códigos HTML necesario para crear una página HTML completa. Cuando se utiliza Ajax, los cambios HTTP POST en llamar al servicio AWeb que pide trozos de contenido para la inyección. Los cambios peculiares de aplicaciones Web a un cliente tradicional / servidor, donde puede consultar y recuperar piezas específicas de contenido.

El controlador sabe que la aplicación de llamar en función de la información enviada a la dirección URL. Se llama al método para añadir Además, y llama al método de la memoria para almacenar o recuperar la memoria. En el caso de la recuperación de la memoria, que pedazo de la memoria se almacena o se recupera es un parámetro. Los datos que se devuelve se empaqueta como un mensaje SOAP. SOAP, en contraste al descanso, ofrece una multiplicidad de funciones y representaciones en una única URL. Anteriormente, se indicó que el descanso es más parecido a una base de datos, y SOAP se asemeja más a una API. Esto es comprensible debido a la forma en que cada enfoque expone su URL, y los datos que son enviados y recibidos. La semántica de los datos de lo que es y representa en la URL es muy diferente para SOAP y REST. En un enfoque REST, si utiliza HTTP PUT para guardar los datos en el servidor, entonces se asume para obtener los mismos datos cuando se llama HTTP GET. En un enfoque SOAP, si utiliza HTTP PUT, no asumen para obtener los mismos datos cuando se llama HTTP GET. De hecho, utilizando un jabón, no tienes idea de lo que los datos que obtendrá, pues el jabón requiere algún tipo de semántica que se asocia con HTTP GET y PUT con un contrato definido en un archivo WSDL. La diferencia entre una base de datos y el enfoque de la API se más claro ejemplo de la evolución de la calculadora.

Originalmente, la aplicación resto utilizó un conjunto de direcciones URL, pero la URL que estaban equivocados, ya que se ajustó a un enfoque de la API en la parte superior de un enfoque de recursos. Por ejemplo, la dirección de memoria es / services/memory/1. La URL es correcta, pero en realidad es completamente incorrecta. Como se define la dirección, la ubicación de la memoria / services/memory/1 es compartida por todo el mundo. Para distinguir entre los diferentes usuarios, la mayoría de los marcos de la aplicación Web utiliza cookies. Y las galletas, de nuevo, son la respuesta completamente equivocado. Imagine por escrito una solicitud en la que ahorrar un poco de valor que desea compartir con alguien más. Si usted le da a la otra persona la dirección URL que utiliza para almacenar los datos, esa persona no podía acceder a los datos, ya que su identificador cookie no sería compatible con su identificador de cookie. El problema es que el estado de los recursos definidos por el URL depende de la dirección y un identificador de cookie.

Esto viola los principios REST. Principios de estado de descanso que si la memoria está almacenado en la dirección URL / services/memory/1, entonces el mismo estado es recuperado, independientemente de que acceda a la URL. Una "cookie" puede ser utilizado para fines de autorización. Uso de una "cookie", un servidor puede identificar si una solicitud es autorizado para ver la representación de los recursos. La solución es pensar en términos de datos y considerar la identificación del punto de la memoria como un identificador de fila arbitraria que hace referencia a una ubicación de memoria. Esto se traduce en la adición de ser tanto un cálculo y una operación de memoria. Al escribir su aplicación REST, recuerde los siguientes puntos:

• Descanse es sobre la gestión de datos, y SOAP es sobre la gestión de las API.

• Descanse tiene contratos dinámica, es decir, se conectan los recursos y utilizar los enlaces descritos y las cabeceras HTTP de los clientes. Por ejemplo, un cliente puede definir el contrato a los datos XML, y otro puede definir el contrato a los datos HTML. El servidor se adapta a cada uno mediante el envío de una representación adecuada de un recurso.

• Descanso cuenta con un conjunto predefinido de la semántica mediante HTTP GET, HTTP POST, URLs, los recursos y las representaciones.

• SOAP no tiene un conjunto predefinido de semántica o de los contratos, ya que son definidos por los metadatos (WSDL).

• Descanse gestiona las direcciones URL de una manera dinámica, donde se crean las direcciones URL de forma dinámica.

• URL en un enfoque REST representan referencias a un recurso y no necesariamente un archivo en un disco duro.

un artículo presentado por Sonja Lande


Descargo de responsabilidad:Nuestro sitio web no es responsable por el contenido de este artículo. Webarticles es un recurso de información gratuito.
Importante: Este artículo "Entender la definición y Filosofía de descanso" fue traducida por un software automático. Sentimos pena por los errores de ortografía que pueda haber ocurrido. Gracias por su comprensión.


Online: 511 users browsing the articles directory