Я использую uploadLink для установки заголовков, используемых для отправки запросов на мой сервер Apollo (см. Код ниже). Однако после входа в систему я хотел бы сбросить заголовок, потому что «organizationid», который также включен в заголовок, еще не доступен в локальном хранилище во время инициализации провайдера Apollo. «Организационный идентификатор» я получаю только с сервера Apollo из запроса после входа в систему.
const {othertoken} = queryString.parse(window.location.search)
const header = {
Authorization: ' Bearer ' + localStorage.getItem('accounts:accessToken'),
othertoken,
organizationid: localStorage.getItem('organizationId')
}
const uri = CONFIG.graphQLServerTest
const uploadLink = createUploadLink({uri, headers: header})
const cache = new InMemoryCache()
const apolloClient = new ApolloClient({
cache,
resolvers: merge(dashboardStore.resolvers, collectionStore.resolvers, templateStore.resolvers, documentStore.resolvers) as any,
link: ApolloLink.from([errorLink, uploadLink])
})
cache.writeData({data: collectionStore.defaults})
cache.writeData({data: dashboardStore.defaults})
cache.writeData({data: documentStore.defaults})
cache.writeData({data: templateStore.defaults})
const accountsGraphQL = new GraphQLClient({graphQLClient: apolloClient})
const accountsClient = new AccountsClient({}, accountsGraphQL)
const accountsPassword = new AccountsClientPassword(accountsClient)
export {accountsClient, accountsGraphQL, accountsPassword, apolloClient}
Мне нужен «организационный идентификатор», включенный в каждый из запросов, отправляемых на сервер во всех запросах. после того, как я сохранил его в локальном хранилище. Для этого мне нужно повторно инициализировать заголовок после сохранения 'Organizationid' в локальном хранилище. Есть ли способ сделать это?
Я бы хотел не указывать в качестве параметра запроса 'Organizationid'.