在Shinyapps.io中运行gmailr

时间:2019-03-25 03:41:30

标签: r shiny shinyapps gmailr

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

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

我检查了Shinyapps.io中的日志,它在后台运行,但不在前端运行。

例如,当我运行函数时:

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

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

enter image description here

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

任何人都有使用gmailr软件包的经验吗?

编辑:

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

enter image description here

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

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

enter image description here

1 个答案:

答案 0 :(得分:1)

弄清楚是否有人将来要引用它:

将Gmailr托管在Shiny Apps中的步骤:

1)将本地选项设置为:

options(httr_oob_default = TRUE, httr_oauth_cache=TRUE)

gmailr::clear_token()

运行您的Shiny App。

2)将会出现一个弹出窗口供您选择您的Gmail帐户。

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

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

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

options(httr_oob_default = TRUE, httr_oauth_cache=TRUE)

gmailr::clear_token()

6)将包含httr oauth文件的闪亮应用程序上载到Directyapps.io

应用程序应立即拨打您的gmail帐户,而不要求您进行身份验证!