Кэш сервера Apollo с Redis не будет работать в источниках данных

#redis #graphql #apollo-server

Вопрос:

Я подробно изучил эту проблему , но не нашел ничего, что работало бы на меня. Проблема , с которой я всегда сталкиваюсь, заключается в том, что я не могу выполнять операции в кэше ни в одном классе источников данных. Вот как я передаю кэш на сервер apollo:

 const cache=new RedisCache(redis)
const server=new ApolloServer({
    typeDefs:schema ,
    resolvers,
    cache,
    dataSources:()=>({
      ....
    }),
})
 

И вот как я передаю его в класс источников данных:

 initialize({context,cache}={}){
        this.context=context
        this.cache=cache
    }
 

Тем не менее , я никогда не смогу успешно установить значение в кэше, потому что возникают ошибки:

 const cachedOrder=await this.cache.get(this.cacheKey(id))
 

Ошибка : Ошибка: Соединение находится в режиме мониторинга, не может обрабатывать команды.
Кроме того, я уверен, что базовый экземпляр ioredis подключен, потому что я выполнял операции в redis-cli. Не могли бы вы, пожалуйста, сказать мне, что я делаю не так? Большое спасибо!