🕵️ SicherheitslückenHak5: Hackers Just Poisoned the Rust Supply Chain | Threat Wire(01.09.2026 um 14:00 Uhr)
🕵️ SicherheitslückenHak5: Hackers Found a Way Into Humanoid Robots | Threat Wire(04.09.2026 um 15:04 Uhr)
🔧 AI Nachrichten Bits und so #1021 (Passwort für Laufwerk)(31.08.2026 um 22:15 Uhr)
🔧 AI Nachrichten Bits und so #1022 (Wie Weißbier)(06.09.2026 um 20:39 Uhr)
🍏 iOS / Mac OSHue-App 6.0 ist da: das sind die Neuerungen(07.09.2026 um 17:21 Uhr)
🕵️ SicherheitslückenHak5: Hackers Just Poisoned the Rust Supply Chain | Threat Wire(01.09.2026 um 14:00 Uhr)
🕵️ SicherheitslückenHak5: Hackers Found a Way Into Humanoid Robots | Threat Wire(04.09.2026 um 15:04 Uhr)
🔧 AI Nachrichten Bits und so #1021 (Passwort für Laufwerk)(31.08.2026 um 22:15 Uhr)
🔧 AI Nachrichten Bits und so #1022 (Wie Weißbier)(06.09.2026 um 20:39 Uhr)
🍏 iOS / Mac OSHue-App 6.0 ist da: das sind die Neuerungen(07.09.2026 um 17:21 Uhr)

🔧 Programmierung 🕛 kürzlich 4 Min Lesezeit
0

Setup Apollo Client para requisições graphQL em React

↗ Quelle (dev.to)
🗣️ Stimme:
📑 Inhaltsübersicht




Introdução



Nesse artigo será apresentado como configurar uma app React para requisições graphQL, para isso será usado a lib APolloClient. A ideia é apresentar como configurar a app e um exemplo de como realizar as requisições.






Libs





  • @apollo/client: lib que permite gerenciar estado e fazer requisições com GraphQL


  • graphql: lib que permite fazer o parse das queries GraphQL



Para adicionar as libs no projeto:



yarn add @apollo/client graphql --dev






Configuração



A seguir vou apresentar como fazer a configuração do ApolloClient para possibilitar requisições graphQL.

Primeiro será criado um context do ApolloClient, para tudo que estiver contido como children dele conseguir realizar requisições graphQL:




CODE
import {
ApolloClient,
ApolloProvider,
HttpLink,
InMemoryCache
} from '@apollo/client'

function ExampleApolloProvider({ children, token, uri }) {
const httpLink = new HttpLink({
uri: uri,
headers: {
authorization: `Bearer ${token}`,
},
})

const client = new ApolloClient({
cache: new InMemoryCache(),
link: httpLink,
})

return <ApolloProvider client={client}>{children}</ApolloProvider>
}

export { ExampleApolloProvider as ApolloProvider }






Em const client é inicializado o APolloClient passando as informações da onde vai bater a partir do link definido, e o cache a partir de uma instância de InMemoryCache, que o APolloClient usa para fazer cache dos resultados das queries.

Em httpLink é passada a uri da api graphQL e definido os headers necessários para as requisições, nesse caso está exemplificado um que usa Bearer token.

Por fim, é definido o retorno e o export para permitir usar dentro da aplicação.



Considerando que é uma app que após o login salva o token no localStorage, e que se quer permitir requisições graphQL para toda a app de forma geral, é usado o ApolloProvider que foi definido no arquivo acima:




CODE
import { ApolloProvider } from './contexts/ApolloContext'
import AppContent from './components/AppContent'

const token = localStorage.getItem('@tokenId')
// endpoint da sua api graphQL
const graphqlURI = 'https://www.example.com'

const App = () => {
return (
<ApolloProvider token={token} uri={graphqlURI}>
<AppContent />
</ApolloProvider>
)
}






Nesse caso do exemplo, está se pegando o token do localStorage (nesse exemplo, como se estivesse salvo com a chave @tokenId lá) e a uri está definida no próprio arquivo, sendo passados para o ApolloProvider. O AppContent está sendo passado como children do ApolloProvider, então tudo que está contido dentro dele, o que seria a app como um todo, vai conseguir realizar requisições graphQL.

Na prática, tendo diferentes ambientes para teste e produção, o graphqlURI poderia vir de uma env definida com a uri de cada ambiente.



Partindo de um query chamada user que a api possui, a qual retorna o nome do usuário e a profissão, vai ser definido o arquivo com a query a ser chamada:




CODE
import { gql } from '@apollo/client'

const GET_USER = gql`
query GetUser {
user {
name
occupation
}
}
`


export default GET_USER






GET_USER corresponde a como vai ser chamada a query pela app React e user o nome da query que se vai buscar na api.



No arquivo que define o AppContent, vai ser chamada a query GET_USER e usado o retorno dela:




CODE
import { useQuery } from '@apollo/client';

import GET_USER from './query/UserQuery'

const AppContent = () => {
const { loading, error, data } = useQuery(GET_USER)

if (loading) return <p>Loading...</p>
if (error) return <p>Falha na requisição</p>

return (
<>
<h1>Welcome!</h1>
<p>Name: {data.user.name}</p>
<p>Occupation: {data.user.occupation}</p>
</>
)
}






O hook useQuery vai executar a query definida em GET_USER, retornando loading true enquanto a requisição não for finalizada, retornando error se a requisição falhar e retornando data quando a requisição for finalizada com sucesso. Enquanto não tiver retornado data, vai trazer a mensagem Loading... na tela. Caso finalize a requisição com erro, vai trazer a mensagem Falha na requisição. Caso finalize a requisição com sucesso, será populado na tela o nome do user e a profissão dele (name e occupation).

E dessa forma está configurado o ApolloClient para requisições graphQL e pronto para uso.






Conclusão



A ideia foi apresentar como configurar o APolloClient para possibilitar app React realizar chamadas graphQL, mostrando a definição do context, o uso desse context e a exemplificação de como executar uma query.

Segue o link da documentação do ApolloClient para quem quiser se aprofundar mais.

Vollständiger Original-Bericht
Ausführliche Details, Code-Beispiele & Hersteller-Stellungnahme auf dev.to.
↗ Original-Artikel auf dev.to lesen
Wie bewertest du diesen Beitrag?
1 Klick Feedback
Teilen mit Netzwerk & Team:

Community-Analysen & Experten-Meinungen 0

Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum
🔴 Akute Relevanz 0%
🟡 In Evaluierung 0%
🟢 Keine Auswirkung 0%
Spannende Innovation 0%
Verwandte Story-Cluster & Quellen (Vektor-KI)
Port 8095 Engine
1 Quelle
Hackers Just Poisoned the Rust Supply Chain | Threat Wire
1 Quelle
Hackers Found a Way Into Humanoid Robots | Threat Wire
1 Quelle
Bits und so #1021 (Passwort für Laufwerk)
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten Setup Apollo Client para requisições graphQL em React

Thematisch verwandte Begriffe: Setup, Apollo, Client, para · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...