{"id":214,"date":"2023-04-16T11:54:32","date_gmt":"2023-04-16T14:54:32","guid":{"rendered":"https:\/\/danielsegovia.com\/plataforma\/?p=214"},"modified":"2023-08-04T20:21:30","modified_gmt":"2023-08-04T23:21:30","slug":"19-arquitectura-cliente-servidor","status":"publish","type":"post","link":"https:\/\/danielsegovia.com\/plataforma\/19-arquitectura-cliente-servidor\/","title":{"rendered":"19 &#8211; Arquitectura Cliente-Servidor"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u00bfDe verdad estamos aqu\u00ed? Han pasado ya 18 clases, incre\u00edble que hayamos avanzado tanto, he recibido mucho cari\u00f1o de ustedes y realmente me han dado un empuj\u00f3n gigante para todo lo que viene, \u00bfLa parte dif\u00edcil? nooooo, para nada, juntamos vamos a lograr superar los obst\u00e1culos que se nos presenten.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hoy vamos a explorar los fundamentos de la arquitectura cliente-servidor para comprender c\u00f3mo funciona la comunicaci\u00f3n entre el cliente y el servidor y as\u00ed poder avanzar con el curso.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La arquitectura cliente-servidor es una piedra angular en el mundo del desarrollo web. Es el sistema que permite que los sitios web, las aplicaciones y los servicios en l\u00ednea funcionen de manera efectiva, brindando una experiencia fluida al usuario.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En etapa del curso, nos enfocaremos en la arquitectura cliente-servidor aplicada al backend utilizando Node.js para tener una noci\u00f3n m\u00e1s clara de como llega la informaci\u00f3n a nuestro backend para que le demos procesamiento a los datos..<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A lo largo de este art\u00edculo, exploraremos temas clave que te ayudar\u00e1n a comprender c\u00f3mo los clientes y los servidores interact\u00faan, c\u00f3mo se transmiten los datos y c\u00f3mo se logra la comunicaci\u00f3n sin problemas entre ambos. Adem\u00e1s, utilizaremos met\u00e1foras simples y ejemplos pr\u00e1cticos para facilitar la comprensi\u00f3n de estos conceptos b\u00e1sicos.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A medida que avancemos, cubriremos temas como el funcionamiento b\u00e1sico de una solicitud y respuesta, la importancia de las direcciones IP y los puertos, y c\u00f3mo abordar los desaf\u00edos de escalabilidad y seguridad en la arquitectura cliente-servidor.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00a1Comencemos nuestro viaje hacia el mundo de la arquitectura cliente-servidor!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Introducci\u00f3n a Cliente-Servidor<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/Diagrama-sin-titulo.drawio.png\"><img loading=\"lazy\" decoding=\"async\" width=\"826\" height=\"330\" src=\"https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/Diagrama-sin-titulo.drawio.png\" alt=\"\" class=\"wp-image-619\" srcset=\"https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/Diagrama-sin-titulo.drawio.png 826w, https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/Diagrama-sin-titulo.drawio-300x120.png 300w, https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/Diagrama-sin-titulo.drawio-768x307.png 768w\" sizes=\"auto, (max-width: 826px) 100vw, 826px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Imaginen por un momento que est\u00e1n sentados en un restaurante, listos para disfrutar de una deliciosa comida. En este escenario, podemos encontrar una met\u00e1fora perfecta para comprender la arquitectura cliente-servidor.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Como cliente en este restaurante, tienes una solicitud espec\u00edfica: deseas pedir un plato delicioso. \u00bfA qui\u00e9n recurres? \u00a1Exacto! Al camarero, que act\u00faa como el servidor en esta met\u00e1fora. Tu tarea como cliente es comunicar claramente qu\u00e9 quieres y esperar pacientemente a que el camarero entregue tu pedido.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En el mundo de la arquitectura cliente-servidor, t\u00fa, como cliente, eres la parte que solicita informaci\u00f3n o servicios, mientras que el servidor es el que responde a esas solicitudes. Esta comunicaci\u00f3n bidireccional es fundamental para el funcionamiento de aplicaciones web y servicios en l\u00ednea.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Durante el transcurso de este art\u00edculo, exploraremos c\u00f3mo se establece esta comunicaci\u00f3n entre el cliente y el servidor. Discutiremos los protocolos de comunicaci\u00f3n utilizados, como HTTP y WebSocket, y c\u00f3mo facilitan el intercambio de informaci\u00f3n de manera eficiente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Adem\u00e1s, veremos c\u00f3mo funciona el proceso b\u00e1sico de una solicitud y una respuesta. Descubriremos c\u00f3mo se inicia una solicitud desde el cliente, c\u00f3mo se procesa en el servidor y c\u00f3mo se genera una respuesta para ser enviada de vuelta al cliente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La arquitectura cliente-servidor tiene una gran relevancia en el desarrollo backend con Node.js, y entender estos conceptos b\u00e1sicos sentar\u00e1 una base s\u00f3lida para tu comprensi\u00f3n en el mundo del desarrollo web.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Componentes<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Imaginen nuevamente ese restaurante. Como cliente, est\u00e1s sentado en tu mesa, listo para realizar tu pedido. Pero, \u00bfqui\u00e9n est\u00e1 al otro lado de la comunicaci\u00f3n? \u00a1Es el camarero, quien act\u00faa como el servidor! El camarero se encarga de recibir tu solicitud y asegurarse de que se cumpla correctamente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En el mundo de la arquitectura cliente-servidor, el cliente es la parte que solicita informaci\u00f3n o servicios, mientras que el servidor es la parte que responde a esas solicitudes. Imagina al cliente como el usuario de una aplicaci\u00f3n web o un navegador, y al servidor como la computadora o el sistema que almacena y procesa la informaci\u00f3n solicitada.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">El cliente, en su forma m\u00e1s com\u00fan, es el usuario que interact\u00faa con una aplicaci\u00f3n o un sitio web a trav\u00e9s de un navegador. Puede ser una persona utilizando un tel\u00e9fono m\u00f3vil, una tablet o una computadora de escritorio. El cliente env\u00eda solicitudes (el famoso <strong>request<\/strong>) al servidor y espera las respuestas correspondientes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Por otro lado, el servidor es qui\u00e9n procesa esas solicitudes del cliente y env\u00eda las respuestas apropiadas. El servidor tiene la capacidad de almacenar y acceder a informaci\u00f3n, procesar datos y realizar acciones espec\u00edficas en funci\u00f3n de las solicitudes del cliente. Puede ser una computadora dedicada o una nube de servidores.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Adem\u00e1s de estos componentes, tambi\u00e9n hay protocolos de comunicaci\u00f3n que facilitan la interacci\u00f3n entre el cliente y el servidor. Algunos ejemplos comunes son el <a href=\"https:\/\/www.youtube.com\/watch?v=6HJAWFenYx8\" target=\"_blank\" rel=\"noreferrer noopener\">Protocolo de Transferencia de Hipertexto (HTTP)<\/a> para la transferencia de datos en la web y <a href=\"https:\/\/www.youtube.com\/watch?v=ugRyLSYkibY\" target=\"_blank\" rel=\"noreferrer noopener\">WebSocket<\/a> para la comunicaci\u00f3n bidireccional en tiempo real.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Solicitudes<\/h2>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><a href=\"https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/Diagrama-sin-titulo.drawio-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"826\" height=\"321\" src=\"https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/Diagrama-sin-titulo.drawio-1.png\" alt=\"\" class=\"wp-image-621\" srcset=\"https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/Diagrama-sin-titulo.drawio-1.png 826w, https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/Diagrama-sin-titulo.drawio-1-300x117.png 300w, https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/Diagrama-sin-titulo.drawio-1-768x298.png 768w\" sizes=\"auto, (max-width: 826px) 100vw, 826px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Ahora vemos con el ejemplo de un partido de tenis como funciona el proceso de solicitud\/respuesta.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Imaginen que est\u00e1n en una cancha de tenis, listos para jugar un partido emocionante. Cuando uno de ustedes golpee la pelota hacia el otro, esta viajar\u00e1 por el aire hasta que el otro jugador la reciba y la golpee de vuelta. En este juego de tenis, la pelota representa una solicitud, y ustedes, queridos estudiantes, son los jugadores, con uno de ustedes actuando como el cliente y el otro como el servidor.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En la arquitectura cliente-servidor, el proceso de una solicitud y una respuesta sigue el ritmo del tenis. El cliente, como el jugador que inicia el juego, env\u00eda una solicitud al servidor, lanzando la pelota hacia el otro lado de la cancha. El servidor, como el jugador que recibe la pelota, procesa la solicitud y golpea la pelota de vuelta, enviando la respuesta al cliente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Durante el intercambio, el cliente <strong>incluye informaci\u00f3n crucial en su solicitud<\/strong>. Puede pedir lo que necesita y enviar datos para que el servidor los procese o realizar cualquier otra acci\u00f3n necesaria. El servidor, atento y listo para el desaf\u00edo, recibe la solicitud, la interpreta y toma las acciones necesarias para proporcionar una respuesta adecuada.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Una vez que el servidor ha procesado la solicitud, genera una respuesta que contiene la informaci\u00f3n solicitada por el cliente o cualquier mensaje relevante. \u00a1Es como golpear la pelota de vuelta con precisi\u00f3n y potencia! Esta respuesta viaja por el aire, de vuelta al cliente, completando as\u00ed el emocionante proceso de una solicitud y una respuesta.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Recuerden que este proceso ocurre en un abrir y cerrar de ojos, al igual que en un partido de tenis con jugadores r\u00e1pidos y h\u00e1biles. El intercambio de solicitudes y respuestas en la arquitectura cliente-servidor es r\u00e1pido y eficiente, permitiendo una comunicaci\u00f3n fluida y din\u00e1mica entre el cliente y el servidor.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Redes, direcciones IP y puertos<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Las redes, las direcciones IP y los puertos desempe\u00f1an un papel fundamental en la arquitectura cliente-servidor. Para comprender mejor c\u00f3mo se comunican los dispositivos en una red, es importante familiarizarse con las direcciones IP y los puertos.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Imaginen un mundo interconectado en el que todos estamos conectados a trav\u00e9s de una intrincada red de cables y conexiones inal\u00e1mbricas. \u00a1Eso es lo que constituye Internet! Dentro de esta red, cada dispositivo tiene una direcci\u00f3n \u00fanica llamada direcci\u00f3n IP (Protocolo de Internet). Piensen en ella como la identificaci\u00f3n personal de cada dispositivo en la red.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Existen dos tipos principales de direcciones IP: las direcciones IP p\u00fablicas y las direcciones IP privadas. Las direcciones IP p\u00fablicas son asignadas por los proveedores de servicios de Internet (ISP) y son utilizadas para identificar un dispositivo en Internet de manera \u00fanica. Por ejemplo, una direcci\u00f3n IP p\u00fablica podr\u00eda ser \u00ab203.0.113.1\u00bb o \u00ab74.125.68.101\u00bb. Estas direcciones son accesibles desde Internet y permiten que los dispositivos se comuniquen y reciban solicitudes de otros dispositivos conectados en todo el mundo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Por otro lado, las direcciones IP privadas se utilizan dentro de redes locales, como en hogares, oficinas o empresas. Estas direcciones no son accesibles directamente desde Internet y se utilizan para identificar y comunicarse entre los dispositivos dentro de una red privada. Algunos ejemplos de direcciones IP privadas son \u00ab192.168.0.1\u00bb, \u00ab10.0.0.1\u00bb o \u00ab172.16.0.1\u00bb. Las direcciones IP privadas son \u00fanicas dentro de una red local y no deben repetirse en diferentes redes privadas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ahora, hablemos sobre 127.0.0.1 y localhost, dos t\u00e9rminos que seguramente has escuchado antes. Estas son referencias a la direcci\u00f3n IP local de tu propio dispositivo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>127.0.0.1<\/strong> se conoce como la direcci\u00f3n IP \u00abloopback\u00bb. Es una direcci\u00f3n especial que se utiliza para acceder al propio dispositivo desde s\u00ed mismo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Por otro lado, <strong>localhost<\/strong> es un nombre de dominio especial que tambi\u00e9n se refiere a tu propio dispositivo. Cuando se utiliza localhost en la barra de direcciones del navegador, el sistema operativo redirige esa solicitud a la direcci\u00f3n IP 127.0.0.1, permiti\u00e9ndote acceder a servicios y aplicaciones locales que se ejecutan en tu propio dispositivo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Estos t\u00e9rminos son muy \u00fatiles para probar y desarrollar aplicaciones localmente antes de implementarlas en un entorno de producci\u00f3n. Puedes ejecutar y acceder a un servidor web en tu propio dispositivo utilizando la direcci\u00f3n IP 127.0.0.1 o el nombre de dominio localhost.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Adem\u00e1s de las direcciones IP, los puertos tambi\u00e9n desempe\u00f1an un papel crucial en la comunicaci\u00f3n cliente-servidor. Pueden pensar en los puertos como las puertas de entrada y salida en una fiesta. Cada dispositivo tiene m\u00faltiples puertos, y cada puerto tiene un n\u00famero \u00fanico asociado. Los puertos permiten que los datos se env\u00eden y reciban por los dispositivos correctos.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Adem\u00e1s de las direcciones IP, es crucial comprender el concepto de los puertos en la comunicaci\u00f3n cliente-servidor. Detr\u00e1s de cada puerto hay un programa escuchando las peticiones entrantes y es el encargado de procesarlas. Piensen en los puertos como las ventanillas de un edificio, cada una atendida por un programa diferente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cuando un cliente env\u00eda una solicitud a trav\u00e9s de la red, los datos est\u00e1n etiquetados con la direcci\u00f3n IP del dispositivo de destino y el n\u00famero de puerto correspondiente. Esto garantiza que la solicitud sea enviada al programa correcto que est\u00e1 escuchando en ese puerto espec\u00edfico.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Para poner esto en contexto, consideren dos ejemplos comunes: el correo electr\u00f3nico y la web. Cuando enviamos un correo electr\u00f3nico, utilizamos el protocolo SMTP (Protocolo Simple de Transferencia de Correo) que utiliza el puerto 25. Imaginen el puerto 25 como la ventanilla de una oficina de correos especializada en la recepci\u00f3n de mensajes de correo electr\u00f3nico. El programa que est\u00e1 escuchando en ese puerto recibe las solicitudes de env\u00edo de correos electr\u00f3nicos y las procesa para su posterior entrega.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Por otro lado, cuando navegamos por la web, utilizamos el protocolo HTTP (Protocolo de Transferencia de Hipertexto) que utiliza el puerto 80. Imaginen el puerto 80 como la ventanilla de un establecimiento que brinda servicios web. El programa que est\u00e1 escuchando en ese puerto recibe las solicitudes de acceso a p\u00e1ginas web y responde con el contenido correspondiente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En la actualidad, tambi\u00e9n es com\u00fan utilizar HTTPS (HTTP Seguro), que utiliza el puerto 443. Pueden visualizar el puerto 443 como la ventanilla de un establecimiento similar al anterior, pero con mayor seguridad. El programa que est\u00e1 escuchando en ese puerto recibe las solicitudes de acceso a p\u00e1ginas web seguras y garantiza que la comunicaci\u00f3n est\u00e9 encriptada para proteger los datos transmitidos.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Estos son solo algunos ejemplos de puertos y los protocolos asociados a ellos. Sin embargo, en el contexto del desarrollo de software, nosotros, como desarrolladores, tendremos la tarea de dise\u00f1ar nuestro propio software para que se ejecute en un puerto espec\u00edfico. As\u00ed, nuestro programa estar\u00e1 a la espera de peticiones entrantes en ese puerto y ser\u00e1 responsable de procesarlas y responder adecuadamente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Recuerden que los puertos son esenciales para garantizar que las solicitudes y respuestas sean enviadas a los programas correctos en los dispositivos de destino. Al comprender el papel de los puertos, podemos dise\u00f1ar y desarrollar software que corra en un puerto espec\u00edfico para aceptar peticiones y responderlas de manera eficiente.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">DNS<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">En este punto, vamos a explorar un componente esencial para la navegaci\u00f3n en Internet: el DNS (Sistema de Nombres de Dominio).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Imaginen que est\u00e1n tratando de acceder a un sitio web escribiendo su direcci\u00f3n IP en lugar de su nombre de dominio. Ser\u00eda como tratar de recordar y marcar una larga secuencia de n\u00fameros en lugar de simplemente escribir el nombre del sitio web en la barra de direcciones. Aqu\u00ed es donde entra en juego el DNS.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">El DNS act\u00faa como una especie de \u00ablibro de direcciones\u00bb de Internet. Cuando ingresamos una URL, como <a href=\"https:\/\/danielsegovia.com\/\">danielsegovia.com<\/a>, nuestro navegador env\u00eda una consulta al DNS para traducir ese nombre de dominio en la direcci\u00f3n IP correspondiente, en este caso 181.30.140.198.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/image-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/image-1-1024x593.png\" alt=\"\" class=\"wp-image-618\" width=\"685\" height=\"397\" srcset=\"https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/image-1-1024x593.png 1024w, https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/image-1-300x174.png 300w, https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/image-1-768x445.png 768w, https:\/\/danielsegovia.com\/plataforma\/wp-content\/uploads\/2023\/07\/image-1.png 1103w\" sizes=\"auto, (max-width: 685px) 100vw, 685px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">Gracias al DNS, no tenemos que recordar las direcciones IP de todos los sitios web que visitamos. Simplemente ingresamos el nombre de dominio y el DNS se encarga de encontrar la direcci\u00f3n IP asociada.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En resumen, el DNS es un componente clave en la arquitectura cliente-servidor que nos permite traducir nombres de dominio en direcciones IP. Gracias a esto, podemos acceder f\u00e1cilmente a los sitios web sin tener que recordar las direcciones IP. Adem\u00e1s, 127.0.0.1 y localhost son referencias a la direcci\u00f3n IP local de nuestro propio dispositivo, lo que nos permite acceder a servicios y aplicaciones locales durante el desarrollo y pruebas.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Prep\u00e1rate para el pr\u00f3ximo encuentro<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">En la pr\u00f3xima clase veremos estos conceptos y tambi\u00e9n vamos a instalar Docker para que nos sirva para el resto del curso<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u00bfDe verdad estamos aqu\u00ed? Han pasado ya 18 clases, incre\u00edble que hayamos avanzado tanto, he recibido mucho cari\u00f1o de ustedes y realmente me han dado un empuj\u00f3n gigante para todo lo que viene, \u00bfLa parte dif\u00edcil? nooooo, para nada, juntamos vamos a lograr superar los obst\u00e1culos que se nos presenten. Hoy vamos a explorar los &#8230; <a title=\"19 &#8211; Arquitectura Cliente-Servidor\" class=\"read-more\" href=\"https:\/\/danielsegovia.com\/plataforma\/19-arquitectura-cliente-servidor\/\" aria-label=\"Leer m\u00e1s sobre 19 &#8211; Arquitectura Cliente-Servidor\">Leer m\u00e1s<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,3],"tags":[],"class_list":["post-214","post","type-post","status-publish","format-standard","hentry","category-backend-con-node-js","category-curso-de-node-js"],"_links":{"self":[{"href":"https:\/\/danielsegovia.com\/plataforma\/wp-json\/wp\/v2\/posts\/214","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/danielsegovia.com\/plataforma\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/danielsegovia.com\/plataforma\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/danielsegovia.com\/plataforma\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/danielsegovia.com\/plataforma\/wp-json\/wp\/v2\/comments?post=214"}],"version-history":[{"count":5,"href":"https:\/\/danielsegovia.com\/plataforma\/wp-json\/wp\/v2\/posts\/214\/revisions"}],"predecessor-version":[{"id":622,"href":"https:\/\/danielsegovia.com\/plataforma\/wp-json\/wp\/v2\/posts\/214\/revisions\/622"}],"wp:attachment":[{"href":"https:\/\/danielsegovia.com\/plataforma\/wp-json\/wp\/v2\/media?parent=214"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/danielsegovia.com\/plataforma\/wp-json\/wp\/v2\/categories?post=214"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/danielsegovia.com\/plataforma\/wp-json\/wp\/v2\/tags?post=214"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}