Puedes gestionar datos en tu clúster de Atlas utilizando AWS AppSync Direct Lambda Resolvers. La función Lambda, que funciona como un resolvedor para el AWS AppSync GraphQL API, permite realizar operaciones CRUD sin interrupciones en tus datos en tu clúster de Atlas. La integración de Atlas con AWS AppSync ofrece una solución poderosa y flexible para construir API GraphQL escalables y sin servidor.
Esta integración no solo reduce la complejidad de gestionar múltiples fuentes de datos, sino que también mejora la experiencia de desarrollo al proporcionar una plataforma unificada y flexible para arquitecturas de aplicaciones modernas. Ya sea que estés manejando operaciones CRUD u optimizando cargas útiles, esta integración te permite construir APIs escalables, eficientes y rentables.
Esta página le guía a través de los siguientes pasos:
Implementa el stack de CloudFormation que contiene la función sin servidor Lambda y una API GraphQL AppSync gestionada por AWS.
Prueba la API de AppSync ejecutando consultas desde la consola de la API de AWS AppSync o Postman.
Requisitos previos
Antes de comenzar, debe hacer lo siguiente:
Implementar un clúster de Atlas
Configura la base de datos para seguridad de red y acceso
Configurar una cuenta de AWS con acceso a la Consola de gestión de AWS
Procedimiento
Cree la función sin servidor Lambda en AWS.
Inicia sesión en la consola de gestión de AWS y navegue hasta Applications, que se encuentra en la barra lateral izquierda dentro de la consola AWS de Lambda.
Haz clic en Create application y luego selecciona la pestaña Serverless application.
Escribe
MongoDB-AppSync-Appen la barra de búsqueda y luego selecciona la casilla para mostrar apps que crean IAM roles personalizados o políticas de recursos.Haz clic en la
MongoDB-AppSync-Appaplicación en los resultados de búsqueda.Pegue la cadena de conexión de Atlas en el campo AtlasConnectionString bajo Application settings.
Selecciona la casilla para crear roles IAM y haz clic en Deploy para implementar la pila CloudFormation.
La pila CloudFormation inicia la creación de:
Una función Lambda que contiene la lógica esencial requerida para resolver consultas desde la API de AppSync.
Una AppSync GraphQL API que contiene un esquema que define queries y Mutations. Estas queries y Mutations están vinculadas a la función Lambda establecida por la pila de CloudFormation.
Cuando se complete la implementación, copia lo siguiente en la sección Outputs de la pila CloudFormation:
GraphQLApiKey, que es la clave API de AppSyncGraphQLAPIURLque es el URL de la API de AppSyncLambdaFunction, que es el ARN de la función Lambda
Prueba la API de AppSync con un resolutor Lambda como su fuente de datos.
Puedes utilizar la consola de AWS AppSync o Postman para probar la API de AppSync.
Las cargas útiles de solicitudes y respuestas de API deben estar en el formato de la API de datos de MongoDB Atlas (v1). Cada query debe incluir los parámetros necesarios de la query de solicitud y del body. Para obtener más información sobre la sintaxis de la API de datos, consulta MongoDB Atlas Data API (v1):
Inicia sesión en la Consola de gestión de AWS y navega hasta la página AWS AppSync.
Haz clic en el enlace a
MongoDB-AppSync-SAM_API.Haz clic en Queries en la navegación izquierda debajo de MongoDB-AppSync-SAM_API.
Selecciona el Explorer (tercer ícono) que está debajo de Queries.
Selecciona el tipo de query e introduce la query.
Puedes ejecutar cualquiera de los siguientes tipos de consulta:
aggregatefindyfindOneinsertOneyinsertManyupdateOneyupdateManydeleteOneydeleteMany
Si escribe la query en el campo input, los caracteres de escape se agregan automáticamente a su query.
Haz clic en el botón de reproducir para ejecutar la query.
La salida contiene caracteres de secuencia de escape. Recomendamos implementar una lógica en su aplicación para convertir la secuencia de escape en JSON.
Descarga la colección de Postman llamada
postman.jsondesde GitHub.Abre Postman y haz clic en Import.
Completa los pasos para importar el archivo
postman.jsondescargado.Para realizar una query, sigue estos pasos:
Enviar la solicitud
POSTalGraphQLAPIURL.Autenticarse con
GraphQLApiKey.
Haga clic en Try para Ejecutar la query.