将环境变量传递给 shinyapps.io
Passing environmental variables to shinyapps.io
我正在尝试将 Shiny 应用发布到 shinyapps.io,但该应用需要 Quandl API 连接。我不想将 API 键放入我的代码中,所以我使用 .Renviron
文件来存储 API 键。
这是 .Renviron
文件的内容:
QUANDL_API_KEY=api_key_goes_here
这是 .Rmd 文件的内容:
---
title: "Test"
runtime: shiny
output: html_document
---
```{r}
print(Sys.getenv("QUANDL_API_KEY"))
```
当我部署到 shinyapps.io 时,什么也没有打印出来。但是当我在本地 运行 时,密钥被打印出来了。 .Renviron
文件位于应用程序根目录中。
我做错了什么?
正如 Bill Ash 在评论中建议的那样,在脚本开头使用 readRenviron()
对我有用:
---
title: "Test"
runtime: shiny
output: html_document
---
```{r}
readRenviron(".Renviron")
print(Sys.getenv("QUANDL_API_KEY"))
```
我正在尝试将 Shiny 应用发布到 shinyapps.io,但该应用需要 Quandl API 连接。我不想将 API 键放入我的代码中,所以我使用 .Renviron
文件来存储 API 键。
这是 .Renviron
文件的内容:
QUANDL_API_KEY=api_key_goes_here
这是 .Rmd 文件的内容:
---
title: "Test"
runtime: shiny
output: html_document
---
```{r}
print(Sys.getenv("QUANDL_API_KEY"))
```
当我部署到 shinyapps.io 时,什么也没有打印出来。但是当我在本地 运行 时,密钥被打印出来了。 .Renviron
文件位于应用程序根目录中。
我做错了什么?
正如 Bill Ash 在评论中建议的那样,在脚本开头使用 readRenviron()
对我有用:
---
title: "Test"
runtime: shiny
output: html_document
---
```{r}
readRenviron(".Renviron")
print(Sys.getenv("QUANDL_API_KEY"))
```