{"id":1563,"date":"2022-02-15T09:39:48","date_gmt":"2022-02-15T09:39:48","guid":{"rendered":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/?p=1563"},"modified":"2022-02-15T09:50:43","modified_gmt":"2022-02-15T09:50:43","slug":"controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies","status":"publish","type":"post","link":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/","title":{"rendered":"Controla las peticiones de tu API serverless con Azure Functions Proxies"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1599\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azure-functions.jpg\" alt=\"\" width=\"598\" height=\"356\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azure-functions.jpg 558w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azure-functions-300x178.jpg 300w\" sizes=\"auto, (max-width: 598px) 100vw, 598px\" \/><\/p>\n<p>Cuando desarrollamos APIs serverless en Azure, podemos tener la necesidad de controlar las llamadas que recibimos, por ejemplo, para exponer una arquitectura de microservicios en m\u00faltiples aplicaciones de funciones mediante un \u00fanico punto de entrada para los clientes. Aunque Azure Api Management nos provee de una plataforma muy completa para la gesti\u00f3n de APIs, tenemos a nuestra disposici\u00f3n los <a href=\"https:\/\/docs.microsoft.com\/es-es\/azure\/azure-functions\/functions-proxies\">proxies<\/a>, una opci\u00f3n <em>out of the box<\/em> del servicio de Azure Functions, m\u00e1s limitada pero que, por su mayor simplicidad, puede ser muy interesante en algunos escenarios.<\/p>\n<p><!--more--><\/p>\n<h2>\u00bfQu\u00e9 son los Azure Functions Proxies?<\/h2>\n<p>Los <strong>proxies<\/strong> b\u00e1sicamente son una <em>fachada <\/em>por encima de nuestras funciones, generando un conjunto de endpoints HTTP adicionales a los de nuestro API. Actualmente est\u00e1n disponibles en las versiones 1.x a 3.x de Azure Functions.<\/p>\n<p>\u00bfQu\u00e9 podemos hacer con ellos? Algunos posibles casos de uso ser\u00edan:<\/p>\n<ul>\n<li>Reverse proxy<\/li>\n<li>Mocking<\/li>\n<li>Modificaci\u00f3n de peticiones y respuestas<\/li>\n<li>Etc.<\/li>\n<\/ul>\n<h2>Creaci\u00f3n de un proxy en el portal de Azure<\/h2>\n<p>Creamos una aplicaci\u00f3n de funciones en .NET 3.1. Una vez implementado el recurso, generamos una funci\u00f3n HTTP sobre la plantilla est\u00e1ndar de una funci\u00f3n HTTP para desarrollar en el portal.<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img1.jpeg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1566 size-full\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img1.jpeg\" alt=\"\" width=\"833\" height=\"871\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img1.jpeg 833w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img1-287x300.jpeg 287w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img1-768x803.jpeg 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img1-610x638.jpeg 610w\" sizes=\"auto, (max-width: 833px) 100vw, 833px\" \/><\/a><\/p>\n<p>Dentro de la funci\u00f3n, en la secci\u00f3n <em>Integration <\/em>del men\u00fa lateral izquierdo, pulsamos en el esquema sobre el trigger. \u00c9sto nos habilita un panel lateral en el que vamos a hacer alguna modificaci\u00f3n. Nuestro endpoint va a responder a las peticiones GET en la ruta v1\/hello.<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img2.jpeg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-1567 size-large\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img2-1024x336.jpeg\" alt=\"\" width=\"1024\" height=\"336\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img2-1024x336.jpeg 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img2-300x98.jpeg 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img2-768x252.jpeg 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img2-1536x503.jpeg 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img2-610x200.jpeg 610w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img2.jpeg 1889w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p>Esta plantilla devuelve un texto saludando al nombre que se pase por <em>query string<\/em>.<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img3-1.jpeg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-1572 size-large\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img3-1-1024x209.jpeg\" alt=\"\" width=\"1024\" height=\"209\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img3-1-1024x209.jpeg 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img3-1-300x61.jpeg 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img3-1-768x157.jpeg 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img3-1-1536x314.jpeg 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img3-1-610x125.jpeg 610w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img3-1.jpeg 1826w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p>Vamos a crear nuestro primer proxy, que se va a encargar de redirigir las peticiones que lleguen sin indicar la versi\u00f3n en la URL a la v1 por defecto. Para ello, en el men\u00fa principal de la aplicaci\u00f3n de funci\u00f3n, en la secci\u00f3n Functions entramos en Proxies y creamos uno con los siguientes datos.<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img4.jpeg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-1569 size-large\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img4-1024x346.jpeg\" alt=\"\" width=\"1024\" height=\"346\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img4-1024x346.jpeg 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img4-300x101.jpeg 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img4-768x260.jpeg 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img4-1536x519.jpeg 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img4-610x206.jpeg 610w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img4.jpeg 1592w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p>Esta configuraci\u00f3n indica que cualquier GET a api\/hello ser\u00e1 redireccionado a api\/v1\/hello, que es donde responde nuestra funci\u00f3n.<\/p>\n<p>En el editor de app service podremos ver que se ha generado un fichero llamado <strong>proxies.json <\/strong>con la estructura de nuestros proxies.<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img5.jpeg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-1570 size-full\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img5.jpeg\" alt=\"\" width=\"986\" height=\"365\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img5.jpeg 986w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img5-300x111.jpeg 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img5-768x284.jpeg 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img5-610x226.jpeg 610w\" sizes=\"auto, (max-width: 986px) 100vw, 986px\" \/><\/a><\/p>\n<p>Si realizamos una petici\u00f3n a la direcci\u00f3n URL del proxy (se puede obtener haciendo clic sobre el mismo) vemos que redirige correctamente a nuestro endpoint.<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img6.jpeg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-1571 size-large\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img6-1024x222.jpeg\" alt=\"\" width=\"1024\" height=\"222\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img6-1024x222.jpeg 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img6-300x65.jpeg 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img6-768x166.jpeg 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img6-1536x332.jpeg 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img6-610x132.jpeg 610w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img6.jpeg 1826w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p>Ahora vamos a realizar un mock del API. Supongamos que estamos desarrollando una versi\u00f3n 2 del API y queremos devolver datos al cliente mientras finalizamos el desarrollo.<\/p>\n<p>Para ello, vamos a sobrescribir tanto la entrada como la salida del endpoint. Fijamos el valor del query string y devolvemos un JSON, modificando cabeceras como el content-type. Adem\u00e1s, vamos a leer de la configuraci\u00f3n de la funci\u00f3n una clave, en este caso, un GUID que hemos generado simulando un API Key y la devolvemos en otra cabecera.<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img7.jpeg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-1573 size-large\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img7-1024x497.jpeg\" alt=\"\" width=\"1024\" height=\"497\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img7-1024x497.jpeg 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img7-300x145.jpeg 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img7-768x372.jpeg 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img7-1536x745.jpeg 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img7-610x296.jpeg 610w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img7.jpeg 1660w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p>Realizamos la petici\u00f3n al nuevo proxy y observamos como, independientemente del nombre que proporcionemos, la respuesta es la que hemos fijado en el proxy as\u00ed como las cabeceras que indicamos.<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img8.jpeg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-1574 size-large\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img8-1024x242.jpeg\" alt=\"\" width=\"1024\" height=\"242\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img8-1024x242.jpeg 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img8-300x71.jpeg 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img8-768x182.jpeg 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img8-1536x364.jpeg 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img8-610x144.jpeg 610w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img8.jpeg 1825w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img9.jpeg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-1575 size-large\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img9-1024x236.jpeg\" alt=\"\" width=\"1024\" height=\"236\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img9-1024x236.jpeg 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img9-300x69.jpeg 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img9-768x177.jpeg 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img9-610x141.jpeg 610w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img9.jpeg 1228w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p>Por \u00faltimo, vamos a crear otro proxy para que responda a las peticiones realizadas a v1\/hello\/{name}. El proxy recoger\u00e1 el nombre de la ruta y lo mapear\u00e1 al query string para que nuestro endpoint funcione correctamente.<\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img10.jpeg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-1576 size-large\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img10-1024x375.jpeg\" alt=\"\" width=\"1024\" height=\"375\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img10-1024x375.jpeg 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img10-300x110.jpeg 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img10-768x281.jpeg 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img10-1536x563.jpeg 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img10-610x224.jpeg 610w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img10.jpeg 1602w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<p><a href=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img11-1.jpeg\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"alignleft wp-image-1578 size-large\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img11-1-1024x193.jpeg\" alt=\"\" width=\"1024\" height=\"193\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img11-1-1024x193.jpeg 1024w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img11-1-300x57.jpeg 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img11-1-768x145.jpeg 768w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img11-1-1536x290.jpeg 1536w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img11-1-610x115.jpeg 610w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azfunc-proxies-img11-1.jpeg 1830w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/p>\n<h2>Creaci\u00f3n de proxies desde Visual Studio<\/h2>\n<p>En nuestra soluci\u00f3n, donde tenemos alojado el c\u00f3digo fuente de nuestra aplicaci\u00f3n de funciones, podemos crear el fichero proxies.json con el esquema correspondiente, disponiendo, adem\u00e1s, de intellisense para mayor comodidad en su implementaci\u00f3n. Para poder desarrollar localmente es importante indicar en las propiedades del fichero que se debe copiar al directorio de salida.<\/p>\n<p>Si deseamos desplegar estas funciones en Azure, ya sea mediante Azure Devops, Github Actions o un perfil de publicaci\u00f3n de Visual Studio, el fichero generar\u00eda los proxies autom\u00e1ticamente en nuestra aplicaci\u00f3n de funci\u00f3n en Azure.<\/p>\n<p>A continuaci\u00f3n, adjunto el repositorio de Github con el c\u00f3digo del ejemplo propuesto.<\/p>\n<p><a href=\"https:\/\/github.com\/cmorenoe\/azure-functions-proxies\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-1476 size-medium\" src=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/12\/github-300x94.jpg\" alt=\"\" width=\"300\" height=\"94\" srcset=\"https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/12\/github-300x94.jpg 300w, https:\/\/encaminablogs.wpenginepowered.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2021\/12\/github.jpg 303w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<h2>Conclusiones<\/h2>\n<p><strong>Azure Functions Proxies<\/strong> nos proporciona una herramienta simple y \u00fatil para poder controlar y gestionar las peticiones que recibe nuestra API en Azure Functions.<\/p>\n<p>Saludos y Happy Coding!<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content --><span class=\"et_bloom_bottom_trigger\"><\/span>","protected":false},"excerpt":{"rendered":"<p>Cuando desarrollamos APIs serverless en Azure, podemos tener la necesidad de controlar las llamadas que recibimos, por ejemplo, para exponer una arquitectura de microservicios en m\u00faltiples aplicaciones de funciones mediante un \u00fanico punto de entrada para los clientes. Aunque Azure &hellip; <a href=\"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":202,"featured_media":1599,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[111,1],"tags":[],"class_list":["post-1563","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-azure-functions","category-sin-categoria"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v18.2.1 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Controla las peticiones de tu API serverless con Azure Functions Proxies | ENCAMINA<\/title>\n<meta name=\"description\" content=\"Aunque Azure Api Management nos provee de una plataforma muy completa para la gesti\u00f3n de APIs, tenemos a nuestra disposici\u00f3n los Azure Functions Proxies.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Controla las peticiones de tu API serverless con Azure Functions Proxies\" \/>\n<meta property=\"og:description\" content=\"Aunque Azure Api Management nos provee de una plataforma muy completa para la gesti\u00f3n de APIs, tenemos a nuestra disposici\u00f3n los Azure Functions Proxies.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/\" \/>\n<meta property=\"og:site_name\" content=\"Piensa en software, desarrolla en colores\" \/>\n<meta property=\"article:published_time\" content=\"2022-02-15T09:39:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-02-15T09:50:43+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azure-functions.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"558\" \/>\n\t<meta property=\"og:image:height\" content=\"332\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Carlos Moreno\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Carlos Moreno\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\\\/\"},\"author\":{\"name\":\"Carlos Moreno\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#\\\/schema\\\/person\\\/264d85a82af4cb1f08aea35047b510cd\"},\"headline\":\"Controla las peticiones de tu API serverless con Azure Functions Proxies\",\"datePublished\":\"2022-02-15T09:39:48+00:00\",\"dateModified\":\"2022-02-15T09:50:43+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\\\/\"},\"wordCount\":713,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2022\\\/02\\\/azure-functions.jpg\",\"articleSection\":[\"Azure Functions\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\\\/\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\\\/\",\"name\":\"Controla las peticiones de tu API serverless con Azure Functions Proxies | ENCAMINA\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2022\\\/02\\\/azure-functions.jpg\",\"datePublished\":\"2022-02-15T09:39:48+00:00\",\"dateModified\":\"2022-02-15T09:50:43+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#\\\/schema\\\/person\\\/264d85a82af4cb1f08aea35047b510cd\"},\"description\":\"Aunque Azure Api Management nos provee de una plataforma muy completa para la gesti\u00f3n de APIs, tenemos a nuestra disposici\u00f3n los Azure Functions Proxies.\",\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2022\\\/02\\\/azure-functions.jpg\",\"contentUrl\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/wp-content\\\/uploads\\\/sites\\\/21\\\/2022\\\/02\\\/azure-functions.jpg\",\"width\":558,\"height\":332},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#website\",\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/\",\"name\":\"Piensa en software, desarrolla en colores\",\"description\":\"Las ventajas que te ofrece Microsoft Azure y el mundo.NET\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/#\\\/schema\\\/person\\\/264d85a82af4cb1f08aea35047b510cd\",\"name\":\"Carlos Moreno\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7c0a1fc177e7f659eaea95ce9e35459039fd8e6473c1d44b9ed3d72b82b38078?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7c0a1fc177e7f659eaea95ce9e35459039fd8e6473c1d44b9ed3d72b82b38078?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/7c0a1fc177e7f659eaea95ce9e35459039fd8e6473c1d44b9ed3d72b82b38078?s=96&d=mm&r=g\",\"caption\":\"Carlos Moreno\"},\"description\":\"Software &amp; Cloud Architect en ENCAMINA, con 10 a\u00f1os de experiencia en el desarrollo de soluciones empresariales en tecnolog\u00edas Microsoft, ya sea realizando tareas de frontend como de backend. Desde hace un tiempo con el foco puesto en el dise\u00f1o, implementaci\u00f3n y formaci\u00f3n sobre arquitecturas distribuidas en Azure.\",\"sameAs\":[\"admin\"],\"url\":\"https:\\\/\\\/blogs.encamina.com\\\/piensa-en-software-desarrolla-en-colores\\\/author\\\/cmoreno\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Controla las peticiones de tu API serverless con Azure Functions Proxies | ENCAMINA","description":"Aunque Azure Api Management nos provee de una plataforma muy completa para la gesti\u00f3n de APIs, tenemos a nuestra disposici\u00f3n los Azure Functions Proxies.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/","og_locale":"es_ES","og_type":"article","og_title":"Controla las peticiones de tu API serverless con Azure Functions Proxies","og_description":"Aunque Azure Api Management nos provee de una plataforma muy completa para la gesti\u00f3n de APIs, tenemos a nuestra disposici\u00f3n los Azure Functions Proxies.","og_url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/","og_site_name":"Piensa en software, desarrolla en colores","article_published_time":"2022-02-15T09:39:48+00:00","article_modified_time":"2022-02-15T09:50:43+00:00","og_image":[{"width":558,"height":332,"url":"http:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azure-functions.jpg","type":"image\/jpeg"}],"author":"Carlos Moreno","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Carlos Moreno","Tiempo de lectura":"6 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/#article","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/"},"author":{"name":"Carlos Moreno","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#\/schema\/person\/264d85a82af4cb1f08aea35047b510cd"},"headline":"Controla las peticiones de tu API serverless con Azure Functions Proxies","datePublished":"2022-02-15T09:39:48+00:00","dateModified":"2022-02-15T09:50:43+00:00","mainEntityOfPage":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/"},"wordCount":713,"commentCount":0,"image":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azure-functions.jpg","articleSection":["Azure Functions"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/","url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/","name":"Controla las peticiones de tu API serverless con Azure Functions Proxies | ENCAMINA","isPartOf":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/#primaryimage"},"image":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azure-functions.jpg","datePublished":"2022-02-15T09:39:48+00:00","dateModified":"2022-02-15T09:50:43+00:00","author":{"@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#\/schema\/person\/264d85a82af4cb1f08aea35047b510cd"},"description":"Aunque Azure Api Management nos provee de una plataforma muy completa para la gesti\u00f3n de APIs, tenemos a nuestra disposici\u00f3n los Azure Functions Proxies.","inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/controla-las-peticiones-de-tu-api-serverless-con-azure-functions-proxies\/#primaryimage","url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azure-functions.jpg","contentUrl":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-content\/uploads\/sites\/21\/2022\/02\/azure-functions.jpg","width":558,"height":332},{"@type":"WebSite","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#website","url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/","name":"Piensa en software, desarrolla en colores","description":"Las ventajas que te ofrece Microsoft Azure y el mundo.NET","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/#\/schema\/person\/264d85a82af4cb1f08aea35047b510cd","name":"Carlos Moreno","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/7c0a1fc177e7f659eaea95ce9e35459039fd8e6473c1d44b9ed3d72b82b38078?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/7c0a1fc177e7f659eaea95ce9e35459039fd8e6473c1d44b9ed3d72b82b38078?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7c0a1fc177e7f659eaea95ce9e35459039fd8e6473c1d44b9ed3d72b82b38078?s=96&d=mm&r=g","caption":"Carlos Moreno"},"description":"Software &amp; Cloud Architect en ENCAMINA, con 10 a\u00f1os de experiencia en el desarrollo de soluciones empresariales en tecnolog\u00edas Microsoft, ya sea realizando tareas de frontend como de backend. Desde hace un tiempo con el foco puesto en el dise\u00f1o, implementaci\u00f3n y formaci\u00f3n sobre arquitecturas distribuidas en Azure.","sameAs":["admin"],"url":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/author\/cmoreno\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/posts\/1563","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/users\/202"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/comments?post=1563"}],"version-history":[{"count":0,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/posts\/1563\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/media\/1599"}],"wp:attachment":[{"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/media?parent=1563"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/categories?post=1563"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.encamina.com\/piensa-en-software-desarrolla-en-colores\/wp-json\/wp\/v2\/tags?post=1563"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}