我正在构建一个Shiny应用程序,我想在客户端关闭时停止(本地)服务器.实现此目的的一种简单方法是将其包含在shinyServer
函数中:
session$onSessionEnded(function() { stopApp() })
这种方法的缺点是如果用户决定点击刷新,那么应用程序就会死亡.
我已经尝试了各种变通方法,使用eg reactiveTimer
/ invalidateLater
以特定间隔检查连接.但是,它们采用会话引用(它们特定于会话),因此之后不执行任何操作onSessionEnded
.
有没有办法让一个"全局"服务器计时器定期执行,并且可以检查活动连接?或者另一种实现自动应用程序关闭但允许刷新页面的方法?