的googleAuthR是R包包装了谷歌API客户端库(认证和API的进一步使用)。所述googlesheetsř包用于与谷歌片API(即,周围的谷歌片API的包装)集成。
这些软件包中的每一个都有各自独立的OAuth2.0进程。我正在使用googleAuthR以便登录到闪亮的应用程序,该应用程序进而也使用该googlesheets库(但具有不同的身份验证过程)。
问题:我们如何设置googlesheets软件包也使用初始googleAuthR凭据?
这是我正在使用的过程(在闪亮的应用程序中):
对于googleAuthR登录,我使用的是:
options(googleAuthR.webapp.client_secret = "***REMOVED_FROM_EXAMPLE***")
options(googleAuthR.webapp.client_id = "***REMOVED_FROM_EXAMPLE***")
options(googleAuthR.scopes.selected = c("https://www.googleapis.com/auth/userinfo.email",
"https://www.googleapis.com/auth/userinfo.profile",
"https://www.googleapis.com/auth/spreadsheets"))
Run Code Online (Sandbox Code Playgroud)
对于该googlesheets软件包,我目前正在使用预先注册的(单独的)令牌,该令牌已保存到RDS文件中,如该软件包的插图所示:
suppressMessages(gs_auth(token = "googlesheets_token.rds", verbose = FALSE))
gsheet_log <- googlesheets::gs_url("https://docs.google.com/spreadsheets/d/***REMOVED_FROM_EXAMPLE***/edit#gid=0")
Run Code Online (Sandbox Code Playgroud)
我想要一个流程,将的使用替换为gs_auth生成的令牌googleAuthR。
重要说明(稍后添加到此问题):
我想,也许使用googlesheets只在短期内是相关的,应该气馁,因为谷歌将要藐视它在2020年3月3日看到的消息
因此,@Aurèle的评论可能是这里的方法(希望googlesheets4最终获得其前任的所有能力)。从广义上讲,这个问题可能仍然很有趣。