运行 shinyapps.io 中的 gmailr

Running gmailr in shinyapps.io

我刚刚在 shinyapps.io 中部署了一个闪亮的应用程序。

它在本地运行良好,但是当我部署它时,没有出现 gmailr 身份验证弹出窗口。

我检查了 shinyapps.io 中的日志,它在后台工作但在前端不工作。

例如,当我运行函数:

options(httr_oauth_cache=T)
gmailr::clear_token()
gmailr::gmail_auth()

shinyapps.io 中的日志显示这是预期的,但没有弹出窗口:

预期的输出应该是一个弹出窗口,要求我选择要验证的 gmail 帐户。

有人有在 shiny 中使用 gmailr 包的经验吗?

编辑:

我的目录中有一个名为 .httr-oauth 的文件,但没有 rsconnect。

我应该将此文件复制到我的 rsconnect 文件夹吗?

这是我的应用程序在 shinyapps.io 中通过 rconnect 的目录:

如果以后有人想引用这个,请弄清楚:

在 Shiny Apps 中托管 Gmailr 的步骤:

1) 将您的本地选项设置为:

options(httr_oob_default = TRUE, httr_oauth_cache=TRUE)

gmailr::clear_token()

运行 你闪亮的应用程序。

2) 将向您 select 您的 gmail 帐户显示一个弹出窗口。

3) 系统不会自动为您连接,而是会出现验证码。您需要将该身份验证代码复制并粘贴到您的 r 控制台中,它会提示您粘贴它。

4) 在您的工作目录中,您现在将保存一个 httr oauth 文件。这就是授予您访问您的 gmail 帐户的权限。

5) 退出闪亮的应用程序。 从脚本中删除选项并保存:

options(httr_oob_default = TRUE, httr_oauth_cache=TRUE)

gmailr::clear_token()

6) 将目录中带有 httr oauth 文件的闪亮应用上传到 shinyapps.io

应用程序现在应该调用您的 gmail 帐户而不要求您进行身份验证!