Я запустил сервер Apollo graphql. Я хочу проверить JWT, отправленный клиентом Firebase. Согласно этому документу мы можем получить публичные c ключи для проверки. Это также дает max-age
, до которого мы можем хранить ключ. Я использую Auth0- nodejs для проверки JWT. Моя проблема заключается в том, как периодически получать этот ключ publi c и сохранять его в переменной nodejs на сервере Apollo, чтобы мне не приходилось извлекать ключи из firebase для каждого запроса на сервере apollo.
const server = new ApolloServer({
schema, context: ({ req }) => {
const token = req.headers.authorization;
const user = getAuthorizedUser(token);
return { user };
}
});
server.listen();
Здесь getAuthorizedUser (токен) должен каждый раз получать по новому запросу ключи publi c с удаленного сервера. Это может замедлить мое приложение. Я не уверен, как я могу периодически получать данные с удаленного сервера и использовать их для каждого запроса на моем сервере.