我刚刚在Shinyapps.io中部署了一个闪亮的应用程序。
它在本地运行良好,但是当我部署它时,gmailr身份验证弹出窗口没有出现。
我检查了Shinyapps.io中的日志,它在后台运行,但不在前端运行。
例如,当我运行函数时:
options(httr_oauth_cache=T)
gmailr::clear_token()
gmailr::gmail_auth()
shinyapps.io中的日志显示了预期的结果,但没有弹出窗口:
预期输出应该是一个弹出窗口,要求我选择要验证的gmail帐户。
任何人都有使用gmailr软件包的经验吗?
编辑:
我的目录中有一个名为.httr-oauth的文件,但没有rsconnect。
我应该将此文件复制到rsconnect文件夹吗?
这是我通过rconnect在appapp.io中的应用程序的目录:
答案 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帐户,而不要求您进行身份验证!