如何防止闪亮的应用程序变灰?

sta*_*019 3 r heroku shiny

我们在 Heroku 中托管了一个闪亮的应用程序。用户不活动 55 秒后,应用程序将变灰。这适用于 Chrome 和 Safari。边缘工作正常。Heroku 对此有一个默认超时,看起来它不能使用 R buildpack ( https://github.com/virtualstaticvoid/heroku-shiny-app )进行修改。



    function ping() {
        if (!window.Shiny.shinyapp.isConnected()) {
            window.Shiny.shinyapp.reconnect();
        }
    }
    setInterval(ping, 2000);

Run Code Online (Sandbox Code Playgroud)

我们在下面嵌入了 JS 代码以使用 WebSocket 重新连接,但是会话数据丢失了。还有什么我们可以尝试的吗?

以下是有关我们应用程序的更多信息:R 3.4.4 Shiny 1.1.0

Sté*_*ent 13

用户不活动 55 秒后,应用程序将变灰。

我有一个类似的问题,但上下文不同(这是由于代理设置而我没有使用 Heroku)所以我不知道我使用的解决方案是否适合您(我在这里发布是因为我的回复评论太长了)。

我只是简单地包括了这些行:

  autoInvalidate <- reactiveTimer(10000)
  observe({
    autoInvalidate()
    cat(".")
  })
Run Code Online (Sandbox Code Playgroud)

这样,每过 10 秒就会在控制台中打印一个点,我的应用程序不再变灰(尽管这不是真正的“用户活动”)。