Esta é a parte 1 da série para GraphQL e Adobe Commerce. O GraphQL tornou-se rapidamente o padrão do setor para a forma como aplicativos avançados do lado do cliente se comunicam com um back-end. É um tópico cada vez mais relevante para desenvolvedores do Adobe Commerce, já que a plataforma continua a expandir seus recursos no domínio de implementações headless.
Se você é novo no GraphQL, esta seção o orienta para os conceitos e o uso básicos.
O GraphQL é uma especificação para uma linguagem de consulta de API exclusiva e o tempo de execução que fornece dados em resposta a essa linguagem de consulta.
As APIs da Web tradicionais, como REST, têm funcionado bem para sistemas diferentes que transmitem dados de um lado para o outro, mas fornecem menos do que o desempenho máximo para experiências modernas de link de aplicativo, como o Progressive Web Application. Em aplicativos como esse, as camadas de front-end e back-end do igual aplicativo se comuniquem por meio da API da web. A abordagem regimentada de esquemas como REST muitas vezes não fornece a flexibilidade apropriada neste contexto, onde muitos tipos de dados precisam ser buscados rapidamente.
O GraphQL permite que um cliente descreva exatamente os dados de que necessita. Em vez de exigir várias solicitações de rede para buscar vários tipos de dados, uma única solicitação pode consultar muitos tipos. E as respostas são mantidas em ordem, incluindo (em um formato que espelha intuitivamente o query) somente os tipos e campos que são solicitados.
O tempo de execução que implementa a especificação do GraphQL pode ser construído em qualquer idioma. ADOBE COMMERCE e Magento Open Source use o
graphql-php Implementação do PHP e constrói suas próprias camadas sobre ele.
Exibir a documentação completa do GraphQL
Você precisa de um cliente GraphQL GUI para testar amostras de código e tutoriais. Há várias opções:
No cliente do GraphQL, você deve enviar suas solicitações para o caminho do URL /graphql
no Adobe Commerce ou Magento Open Source instância. Se preferir usar uma instância existente para seus testes, use a demonstração do tema Venia (exemplo de implementação do PWA Studio): https://venia.magento.com/graphql