Как передать дополнительный заголовок при вызове мутации в клиенте React native apollo? - PullRequest
0 голосов
/ 24 сентября 2019

Как передать дополнительный заголовок при вызове мутации в клиенте React native apollo?

мой клиент находится здесь:

import { HttpLink } from 'apollo-link-http';
import { ApolloClient } from 'apollo-client';
import { InMemoryCache } from 'apollo-cache-inmemory';

const makeApolloClient = (token) => {
  // create an apollo link instance, a network interface for apollo client
  const link = new HttpLink({
    uri: 'http://x.x.x.x:xxxx/xxxx',
    headers: {
     Authorization: `Bearer ${token}`
    },
  });
  // create an inmemory cache instance for caching graphql data
  const cache = new InMemoryCache();
  // instantiate apollo client with apollo link instance and cache instance
  const client = new ApolloClient({
    link,
    cache
  });
  return client;
};
export default makeApolloClient;

Если мне нужно добавить дополнительный заголовок к тому же клиенту при использовании запроса или мутации, как я могу это сделать?

Возможно ли это с помощью " apollo-link-context"?

1 Ответ

0 голосов
/ 24 сентября 2019

Вы не указали свою версию React, однако, предполагая, что вы используете Hooks, вы делаете это следующим образом.Если вы не используете хуки, измените версию документа для ссылок внизу этого ответа, используя выпадающий список в верхнем левом углу.

Где у вас есть запрос:

const GET_USER = gql`
    query getUser{
     node {
       name
       age
     }
   }
`;

Вы хотите выполнить запрос с помощью ловушки useQuery:

const { loading, error, data } = useQuery(GET_USER, {
    context: {
        headers: {
            "Content-Type": "application/json"
        }
    }
})

Документы:

Вы можете найти документы для каждого здесь: - UseQuery: https://www.apollographql.com/docs/react/essentials/queries/ - Заголовки контекста: https://www.apollographql.com/docs/link/links/http/#passing-context-per-query

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...