¿Qué hacen exactamente los servicios web RESTful?~
Aunque REST ya no es un término nuevo en el campo de la tecnología nacional, no hay muchos materiales chinos sobre REST. Hasta el momento, parece que sólo existe la traducción al chino de la tesis doctoral de Roy Thomas Fielding. Con el próximo lanzamiento de la "Edición china de servicios web REST", se espera que mejore la escasez de información REST china. Este libro es también el primer libro con temática REST publicado en China. Teniendo en cuenta que la versión original de este libro no se publicó hasta mayo de 2007, y la versión china se publicó en sólo un año, uno debe maravillarse de la eficiencia de las editoriales nacionales. Además, gracias a la constante reputación de la editorial O'Reilly, la calidad de este libro es naturalmente apasionante. El libro completo "Servicios web RESTful" responde a las siguientes tres preguntas: ¿Qué es el servicio RESTful? ¿Cómo diseñar e implementar el servicio RESTful? ¿Qué es el servicio RESTful? Este es el tema de los primeros tres capítulos de este libro. En esta parte, el autor presenta los servicios web desde la perspectiva del cliente y señala las características especiales de los servicios RESTful. En el primer capítulo de este libro, "Web programable y su clasificación". El autor divide las arquitecturas de servicios web comunes en 3 categorías: estilo REST, arquitectura orientada a recursos, arquitectura estilo RPC y arquitectura híbrida REST-RPC. El secreto para decidir a qué clasificación pertenece un servicio web radica en las respuestas a las dos siguientes. Preguntas: ¿La información del método del servicio aparece en el método HTTP? ¿La información del alcance del servicio aparece en el URI? Dos respuestas extremas: todas sí y todas no, correspondientes a la arquitectura REST y la arquitectura RPC respectivamente. En el medio está la arquitectura híbrida REST-RPC. Los lectores que no estén familiarizados con el término Web programable no necesitan preocuparse por él. Esta es una forma de clasificar a los usuarios de la Web. Como sugiere el nombre, Web programable se refiere a la Web utilizada por los programas. La palabra correspondiente es Human Web y sus usuarios son humanos. Pero estrictamente hablando, los humanos también navegan por la Web a través de programas (como navegadores). Por lo tanto, Human Web es en realidad un caso especial de Web programable. Los otros dos capítulos de esta parte presentan la escritura de clientes de servicios web y las características de los servicios RESTful respectivamente, e ilustran algunos conceptos importantes de REST: recursos, representación e interfaz unificada. Cómo diseñar e implementar servicios RESTful para responder a esta pregunta Los capítulos 4 a 9 son el núcleo de este libro, y el Capítulo 4 "Arquitectura orientada a recursos (ROA)" es el núcleo de esta parte. El autor ha dejado muy claro el propósito de proponer ROA en el prefacio: al formular esta arquitectura orientada a recursos (ROA), hemos refinado la experiencia del folclore en mejores prácticas para el diseño de servicios web. El autor describe ROA de esta manera: ROA es un método para convertir problemas reales en servicios web RESTful: hace que URI, HTTP y XML funcionen de la misma manera que otras aplicaciones web, lo que facilita su uso a los programadores. En este capítulo, el autor presenta los componentes funcionales de ROA: recurso nombre del recurso representación del recurso conexión entre recursos y las características funcionales de ROA: direccionabilidad apatridia conectividad interfaz unificada Los capítulos siguientes de esta parte hablan sobre la práctica de ROA y, respectivamente, presentan las mejores prácticas de diseño de servicios orientado a recursos, implementación de servicios, REST y ROA, así como los componentes técnicos de los servicios. La aplicación de los servicios RESTful Como última parte de este libro, los capítulos 10 a 12 presentan la aplicación de los servicios RESTful en forma de un tema en cada capítulo. Estos temas son: Arquitectura orientada a recursos versus grandes servicios web Uso de Ajax como marco de servicio REST de cliente REST Para el Capítulo 10 "Arquitectura orientada a recursos versus grandes servicios web", es posible que se sienta un poco extraño: es solo una comparación de arquitecturas. ¿Cómo se puede considerar una aplicación especial? Si lees atentamente el prefacio de este libro, deberías poder ver algunas pistas.
De lo que habla este capítulo es de la premisa de "aplicar REST": ¿Cómo recomendar REST?