有什么方法可以将API密钥永久保存到我的R配置文件或环境中,从而不必每次会话都使用set_key()
?我不喜欢在代码中保存密钥,因为它在github上。
答案 0 :(得分:2)
您可以将其放在First
文件中的Rprofile.site
函数中。
我不确定您在哪个平台上,但这应该可以工作
rfile <- list.files(path = Sys.getenv("R_HOME"), recursive = TRUE,
full.names = TRUE, pattern = "Rprofile.site")
file.edit(rfile)
Rprofile.site
现在应该在编辑器中打开。注意:您可能需要调整系统上文件的文件权限才能对其进行写入(保存)
将此添加到.First
# Things you might want to change
# options(papersize="a4")
# options(editor="notepad")
# options(pager="internal")
# set the default help type
# options(help_type="text")
.First <- function(){
# Your string api key
google_api_key <- "12345"
# Use assign to explicitly set the environment in which to populate the key
assign("my_google_key", google_api_key, envir = .GlobalEnv)
}
保存文件并重新启动R
如果您的api密钥是Token
对象(例如oauth),只需保存到文件并读入并分配给google_api_key
值即可。如:
.First <- function(){
# Your oauth api key read in from file
google_api_key <- readRDS("~/.hide_google_token.rds")
# Use assign to explicitly set the environment in which to populate the key
assign("google_oauth_token", google_api_key, envir = .GlobalEnv)
}