Migrar GraphQL para WundGraph
Nesta página
- Migrar para o WunderGraph
- Criar um aplicativo WnderGraph
- Adicionar scripts npm
- Inicie o servidor WUnderGraph MongoDB
- Configurar Fonte de Dados do MongoDB Atlas
- Adicionar operações de query
- Navegue pelos dados com a interface do usuário do GraphyQL
- Use a interface JSON-RPC do WUnderGraph para produção
- Atualizar aplicativos do cliente
- Desligar os endpoints do Atlas App Services
- Próximos passos
- WuberGraph Cosmo para GraphQL Federation
Importante
Consulte sempre a documentação oficial do MongoDB Atlas e do WUnderGraph para obter as informações mais atualizadas e precisas. Etapas específicas podem variar dependendo dos detalhes do seu projeto e das tecnologias utilizadas.
WnderGraph é uma plataforma abrangente para desenvolvedores que vem com uma ampla variedade de ferramentas open-source e SDKs.
Uma dessas ferramentas é uma estrutura de backend for frontend (BFF). Esta estrutura BFF é uma estrutura de servidor robusta e compatível com especificações que você pode adicionar aos ambientes de produção. Essa estrutura pode integrar dados de qualquer fonte. Isso inclui dados do MongoDB Atlas. Para obter mais detalhes, consulte a página do WUnderGraph para Docs Atlas. Se você planeja usar o GraphQL Federation, dê uma olhada no WUnderGraph Cosmo.
Migrar para o WunderGraph
O WUnderGraph BFF é um gateway de código aberto que agrupa seus dados e gera clientes seguros por tipo para sua estrutura de frontend. Você também pode usar hooks para adicionar lógica de negócios ou resolvedores personalizados do GraphQL para desacoplar os clientes do banco de dados.
O seguinte é uma visão geral de como migrar seu host GraphQL do Atlas App Services para WUnderGraph. Etapas específicas podem variar dependendo dos detalhes do seu projeto e das tecnologias utilizadas.
Se estiver começando do zero, siga a documentação da Fonte de Dados do MongoDB/Atlas . Para mais detalhes, consulte a página WUnderGraph para Docs Atlas.
Se você planeja usar o GraphQL Federation, dê uma olhada no WUnderGraph Cosmos
Configurar Fonte de Dados do MongoDB Atlas
Você precisa configurar sua fonte de dados do MongoDB Atlas. Dentro do seu arquivo wundergraph.config.ts
, adicione o seguinte:
const Atlas = introspect.mongodb({ apiNamespace: 'my_db', databaseURL: 'YourAtlasURL', }); configureWunderGraphApplication({ apis: [Atlas], });
Navegue pelos dados com a interface do usuário do GraphyQL
Depois de executar o servidor WUnderGraph e adicionar operações de query, você pode usar a interface de usuário do GraphQL para explorar seus dados do Atlas por meio de uma API do GraphQL. Isso pode ser útil quando seu aplicativo estiver em desenvolvimento. Para aplicativos em produção, recomendamos o uso da interface JSON-RPC do WUnderGraph (consulte a próxima etapa).
Com seu servidor WUnderGraph em execução, navegue até
http://localhost:9991/graphql
.Adicione estas queries à interface de usuário do GraphyQL:
query Users { db_findManyusers { id name email } } Clique no botão Executar.
Use a interface JSON-RPC do WUnderGraph para produção
O GrafiQL é bom para desenvolvimento, mas para a produção, você deve considerar usar a interface JSON-RPC do WUnderGraph para interagir com os dados do Atlas.
Resumindo, o WUnderGraph compila suas operações GraphQL em endpoints JSON-RPC que você pode chamar.
Depois de executar wunderctl up
, o WUnderGraph verifica o diretório .wundergraph/operations
para arquivos *.graphql
e os processa. Para que isso funcione, cada arquivo deve conter exatamente uma Operação GraphQL.
Cada arquivo será compilado em um endpoint JSON-RPC. O nome do endpoint é determinado pelo nome do arquivo.
Aqui está um exemplo de consulta de API JSON-RPC:
curl http://localhost:9991/operations/Users
Desligar os endpoints do Atlas App Services
Depois de verificar se os pontos de conexão da API GraphQL estão totalmente migrados e operacionais no WUnderGraph, você pode excluir seu aplicativo MongoDB Atlas App Services para evitar custos desnecessários. Lembre-se de que os endpoints do Atlas GraphQL não serão mais suportados a partir de 12 de março de 2025.
Próximos passos
WuberGraph Cosmo para GraphQL Federation
Confira os Cosmos Docs para saber como construir uma GraphQL arquitetura distribuída que combine várias GraphQL APIs do para criar um grafo unificado.
O Cosmo permite que equipes e organizações gerenciem e dimensionem arquiteturas GraphQL (federadas) com facilidade. Itere rapidamente sem quebrar nada nas verificações de composição.
O WUnderGraph Cosmo pode ser executado facilmente localmente, no local ou na nuvem como um serviço gerenciado. O Cosmo é uma solução incluída em bateria que abrange tudo, do roteamento à análise com toda a plataforma.
O Cosmo suporta APIs GraphQL monolíticas, bem como Federação v1 e v2 , incluindo assinaturas.