Rails Redis истекает метод - PullRequest
0 голосов
/ 20 ноября 2018

Если у меня есть токен, срок действия которого истекает через 21 день

Rails.cache.write token, id, expires_in: 21.days

Я пытаюсь написать метод, чтобы проверить, истек ли срок действия или нет. Пожалуйста, дайте мне направление

def check_token_expiry(token)

end

Ответы [ 2 ]

0 голосов
/ 20 ноября 2018

Когда вы указываете expires_in: 21.days во время кэширования, вы указываете базовому хранилищу кэша хранить данные для данного ключа (здесь token) в течение 21 дня, после того, как 21 день истекает, это означает, что данные больше не доступны для передачи.ключ, который вы используете exist? метод, чтобы проверить это.

Rails.cache.exist?(token) # => true  (data is available and you read)
Rails.cache.exist?(token) # => false (cache is expired, data is not available)
0 голосов
/ 20 ноября 2018

Следующий метод вернется, если значение, связанное с token/key, истекло или нет.

def check_token_expiry(token)
  Rails.cache.read(token).nil?
end

Обычно попробуйте прочитать значение из кэша.Если срок действия истек, метод read вернет nil.

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