Nivel de presentación - Arquitecturas de varios niveles sin servidor de AWS con Amazon API Gateway y AWS Lambda

Nivel de presentación

El nivel de presentación es responsable de interactuar con el nivel lógico a través de los puntos de conexión REST de API Gateway expuestos en Internet. Cualquier cliente o dispositivo con capacidad HTTPS puede comunicarse con estos puntos de conexión, lo que le da a su nivel de presentación la flexibilidad de adoptar muchas formas (aplicaciones de escritorio, aplicaciones móviles, páginas web, dispositivos de IoT, etc.). Según sus requisitos, el nivel de presentación puede utilizar las siguientes ofertas sin servidor de AWS: cualquier cliente o dispositivo con capacidad HTTPS puede comunicarse con estos puntos de conexión, lo que le da a su nivel de presentación la flexibilidad de adoptar muchas formas (aplicaciones de escritorio, aplicaciones móviles, páginas web, dispositivos de IoT, etc.). Según sus requisitos, el nivel de presentación puede utilizar las siguientes ofertas sin servidor de AWS:

  • Amazon Cognito: un servicio sin servidor de sincronización de datos e identidades de usuario que le permite agregar el registro, el inicio de sesión y el control de acceso de los usuarios a sus aplicaciones web y móviles de manera rápida y eficiente. El escalado de Amazon Cognito le permite admitir a millones de usuarios e iniciar sesión mediante proveedores de identidad social, como Facebook, Google y Amazon, y proveedores de identidad empresarial mediante SAML 2.0.

  • Amazon S3 con CloudFront: le permite ofrecer sitios web estáticos, como aplicaciones de una sola página, directamente desde un bucket de S3 sin necesidad de aprovisionar un servidor web. Puede usar CloudFront como una red de entrega de contenido (CDN) administrada para mejorar el rendimiento y habilitar SSL/TL mediante certificados administrados o personalizados.

AWS Amplify es un conjunto de herramientas y servicios que se pueden utilizar juntos o de forma individual para ayudar a los desarrolladores de frontend web y móvil a crear aplicaciones de pila completa escalables, con la tecnología de AWS. AWS Amplify es una oferta de servicio completamente administrado para implementar y alojar aplicaciones web estáticas a nivel mundial, que se ofrecen mediante la CDN de confianza de Amazon con cientos de puntos de presencia mundial y con flujos de trabajo CI/CD integrados que aceleran el ciclo de lanzamiento de la aplicación. Amplify admite marcos web conocidos, como JavaScript, React, Angular, Vue y Next.js, así como plataformas móviles, incluidas Android, iOS, React Native, Ionic y Flutter. Según las configuraciones de red y los requisitos de la aplicación, es posible que deba habilitar las API de API Gateway para que cumplan con el uso compartido de recursos de origen cruzado (CORS). El cumplimiento de CORS permite a los navegadores web invocar directamente sus API desde páginas web estáticas.

Cuando implementa un sitio web con CloudFront, se le proporciona un nombre de dominio de CloudFront para llegar a su aplicación (por ejemplo, d2d47p2vcczkh2.cloudfront.net). Puede usar Amazon Route 53 para registrar nombres de dominio y dirigirlos a su distribución de CloudFront, o dirigir los nombres de dominio que ya son de su propiedad a su distribución de CloudFront. Esto permite a los usuarios acceder a su sitio con un nombre de dominio familiar. Tenga en cuenta que también puede asignar un nombre de dominio personalizado mediante Route 53 a su distribución de API Gateway, lo que permite a los usuarios invocar las API con nombres de dominio conocidos.