Поэтому я пытаюсь передать заголовок авторизации в Apollo Client 3 для доступа к базе данных. Рекомендуемый способ сделать это в текущих документах - создать объект HttpLink
const httpLink = new HttpLink({
uri: "************************",
fetch
});
и затем использовать метод setContext (я думаю, из 'http-link-context'):
const authLink = setContext((_, { headers, ...context }) => {
const token = localStorage.getItem("userToken");
return {
headers: {
...headers,
...(token
? { Authorization: `Bearer ${token}` }
: `Bearer *************************`)
},
...context
};
});
затем привейте объекты вместе и передайте их как объект "ссылки" новому ApolloClient:
const client = new ApolloClient({
cache: new InMemoryCache(),
link: authLink.concat(httpLink)
});
К сожалению, однако, когда я делаю это, я получаю сообщение об ошибке
Uncaught (in promise) Error: GraphQL error: Missing authorization header.
И когда я проверяю заголовки своих запросов, я не вижу заголовок авторизации.
Кто-нибудь еще смог запустить и успешно запустить?