Очистить кеш для чтения последнего файла данных с помощью rdrop2 - PullRequest
0 голосов
/ 18 июня 2019

Я создал shinyapp с формой, которая создает новую строку в кадре данных (и отображает ее на другой вкладке) каждый раз, когда пользователь нажимает кнопку «Действительный» после заполнения формы.Когда создается новая строка, я сохраняю свой data.frame в файле .RDS на моем Dropbox с помощью rdrop2.Затем в начале каждого сеанса я загружаю файл данных, содержащий все предыдущие записи, вызывая следующую функцию:

drop_read_rds <- function(file, output_dir, dest = tempdir(), 
                          dtoken = get_dropbox_token(), ...) {
  localfile = paste0(dest, "/", basename(file))
  drop_download(paste(output_dir, file, sep = '/'), local_path = localfile, overwrite = TRUE, dtoken = dtoken)
  readRDS(localfile, ...)
}

Когда создается новая строка, я вижу в своем файловом браузере, что.Файл RDS был изменен.Однако когда я обновляю приложение или заново его запускаю, вызов drop_read_rds в файле Global.R загружает старый файл данных.Эта проблема возникает только с приложением на shinyapp.io, но когда я запускаю локально, все обновляется правильно.

Поэтому я считаю, что какой-то кэш в моем браузере сохраняет старый файл данных на определенное время и, следовательно, не читаетпоследняя версия файла данных.Чтобы проверить эту гипотезу, я сначала подождал (одна ночь), а сегодня утром была загружена последняя версия моего файла данных.Я также использовал ccleaner для очистки кэша моего браузера, и он также работает после этой операции, что усиливает мою гипотезу о проблеме с кэшем.

Прав ли я по диагнозу?Есть ли решение заставить приложение загрузить последний файл данных или автоматически очистить кеш?

Заранее спасибо

...