R googlesheets4将令牌作为参数传递给read_sheet

fdx2calv  于 2023-01-28  发布在  Go
关注(0)|答案(2)|浏览(110)

我只能在表单已被授权的情况下读取表单,
如果没有,后面的每一行代码都会被忽略,因为代码执行过程会不断地请求令牌。有没有办法将令牌索引传递到read_sheet命令中,或者有没有办法事先授权访问?

> aa <- read_sheet('https://docs.google.com/spreadsheets/d....', sheet='Akinesia', range="AC:AH")
The googlesheets4 package is requesting access to your Google account. Select a pre-authorised account or enter '0' to obtain a new token. Press Esc/Ctrl + C to abort.

1: chris.elliott@.....

Selection: 
Enter an item from the menu, or 0 to exit
Selection: 
Enter an item from the menu, or 0 to exit
Selection: 
Enter an item from the menu, or 0 to exit
Selection: aaX <- aa  %>% filter_all(any_vars(!is.na(.)))
Enter an item from the menu, or 0 to exit
Selection: akns <- aaX %>% pivot_longer(-genotype, names_to = "day", values_to = "nonresp")
Enter an item from the menu, or 0 to exit
vlf7wbxs

vlf7wbxs1#

您需要进行一个auth调用,它提供不同的身份验证方法:

默认身份验证

尝试不带参数或使用与Google帐户关联的电子邮件地址的默认呼叫:

googlesheets4::gs4_auth(email = "chris.elliott@...")

服务帐户

您还可以传递与服务帐户关联的内标识文件:

googlesheets4::gs4_auth(path = "access_token.json")

path -标识服务帐户的JSON,格式为jsonlite::fromJSON()的txt参数支持的格式之一(通常为文件路径或JSON字符串)。

漱口令牌

googlesheets4使用gargle包,因此您也应该能够获得如下标记:

library(gargle)
token <- token_fetch()
googlesheets4::gs4_auth(token = token)
mccptt67

mccptt672#

我认为@Bulat建议的选项是有效的,即直接在gs4_auth()呼叫中使用与您的Google帐户关联的电子邮件地址。

相关问题