Objetivos

Neste capítulo, saiba como:

  • Persistir consultas do GraphQL com parâmetros
  • Usar parâmetros de controle de cache com consultas persistentes

Revisar definição da configuração Consultas GraphQL persistidas

Vamos revisar que as Consultas GraphQL persistidas estão habilitadas para o projeto do Site WKND na sua instância do AEM.

  1. Navegue até Ferramentas > Geral > Navegador de Configuração.

  2. Selecione WKND Compartilhado e selecione Propriedades na barra de navegação superior para abrir as propriedades de configuração. Na página Propriedades de configuração, você deve ver que a permissão Consultas persistentes do GraphQL está habilitada.

    Propriedades de Configuração

Persistir consultas do GraphQL usando a ferramenta GraphiQL Explorer integrada

Nesta seção, vamos manter a consulta do GraphQL usada posteriormente no aplicativo cliente para buscar e renderizar os dados do Fragmento de conteúdo de aventura.

  1. Insira a seguinte consulta no GraphiQL Explorer:

    query getAdventureDetailsBySlug($slug: String!) {
    adventureList(filter: {slug: {_expressions: [{value: $slug}]}}) {
        items {
        _path
        title
        activity
        adventureType
        price
        tripLength
        groupSize
        difficulty
        primaryImage {
            ... on ImageRef {
            _path
            mimeType
            width
            height
            }
        }
        description {
            html
            json
        }
        itinerary {
            html
            json
        }
        location {
            _path
            name
            description {
            html
            json
            }
            contactInfo {
            phone
            email
            }
            locationImage {
            ... on ImageRef {
                _path
            }
            }
            weatherBySeason
            address {
            streetAddress
            city
            state
            zipCode
            country
            }
        }
        instructorTeam {
            _metadata {
            stringMetadata {
                name
                value
            }
            }
            teamFoundingDate
            description {
            json
            }
            teamMembers {
            fullName
            contactInfo {
                phone
                email
            }
            profilePicture {
                ... on ImageRef {
                _path
                }
            }
            instructorExperienceLevel
            skills
            biography {
                html
            }
            }
        }
        administrator {
            fullName
            contactInfo {
            phone
            email
            }
            biography {
            html
            }
        }
        }
        _references {
        ... on ImageRef {
            _path
            mimeType
        }
        ... on LocationModel {
            _path
            __typename
        }
        }
    }
    }
    

    Verifique se a consulta funciona antes de salvá-la.

  2. Em seguida, toque em Salvar como e insira adventure-details-by-slug como o Nome da consulta.

    Consulta GraphQL Persistente