我使用RGA package从R进行Google Analytics(分析)访问。我已经设置了Google服务帐户以授权自己使用Shiny应用程序。
一切都可以在本地Shiny和服务器上运行一段时间。一段时间后,我总是得到警告:init_oauth_service_account中的错误:错误的请求(HTTP 400)。
token $ validation中有 $ expires_in 3600 ,所以我认为我应该首先重新验证我的令牌。但是怎么办呢?
还是我的代码有问题?
1。获取令牌
endpoints <- httr::oauth_endpoints('google')
secrets <- jsonlite::fromJSON("My_Service_Account.json")
scope <- 'https://www.googleapis.com/auth/analytics'
token <- httr::oauth_service_token(endpoints, secrets, scope)
save(token, file="token_file")
我不会每次都生成令牌。我将其保存到文件一次,然后阅读:
2。阅读令牌并授权
load("token_file")
RGA::authorize(token = token)
加载(“ token_file”)后,我可以立即在本地R / Shiny上使用RGA包函数。它可以在服务器上运行大约一小时,直到令牌过期。
在这种情况下如何重新验证令牌?