Маркер googleAnalyticsR / googleAuthR устарел в блестящей уценке - PullRequest
1 голос
/ 22 марта 2019

вот моя проблема.

Я получаю доступ к Google Analytics API через R с помощью googleAnalyticsR. Все это происходит в сценарии Markdown. Локально все работает без проблем. Но когда я загружаю скрипт в Shiny Sever, токен GA, похоже, истекает через некоторое время (несколько часов).

Журнал сервера выдает следующее сообщение об ошибке:

Предупреждение в gzfile (файл, режим): не могу открыть сжатый файл «.httr-oauth», вероятная причина «Отказано в доступе»

Сценарий для создания токена выглядит следующим образом:

library(googleAuthR)

options(googleAuthR.client_id = "client-id",
        googleAuthR.client_secret = "client-secret")

gar_auth()

Я прочитал, что должен добавить

googleAuthR.httr_oauth_cache = FALSE 

к опциям. Но когда я делаю это и пытаюсь создать новый токен, я получаю следующую ошибку:

Error: option('googleAuthR.httr_oauth_cache') must be set to 
         valid cache file location, 
         not TRUE or FALSE - (example: '.httr-oauth')

У кого-нибудь есть идеи?

Большое спасибо

1 Ответ

1 голос
/ 25 марта 2019

Проблема не в том, что срок действия токена истекает, пакет googleAnalyticsR позаботится о его обновлении при необходимости.

Проблема в том, что токен не был создан на сервере (я полагаю, вы создали его локально, а затем отправили на сервер), поэтому возникает ошибка:

Warning in gzfile(file, mode) : cannot open compressed file '.httr-oauth', probable reason 'Permission denied'

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

sudo chmod -R 777 .httr-oauth

Сказанное выше позволит shiny получить доступ к файлу.

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