如何获取托管在shinyapps.io上的Shiny应用原始代码
如何获取Shinyapps.io上托管应用的原始代码
你可以通过R的rsconnect包直接拉取自己账号下部署的应用代码,操作步骤如下:
拉取当前部署的最新版本代码
- 首先在本地R环境中安装
rsconnect包,完成后使用你shinyapps.io账号的身份信息完成授权:
执行命令rsconnect::setAccountInfo(name='你的账号名', token='你的账号token', secret='你的账号密钥'),相关身份信息可以在shinyapps.io的个人设置页面获取。 - 执行
rsconnect::showApplications()查看你账号下所有已部署的应用,确认你要找回代码的应用名称。 - 执行拉取命令:
rsconnect::downloadApp(appName = "目标应用名称", destDir = "本地存储路径"),运行后平台会将当前部署的完整代码包下载到你指定的本地路径。
拉取历史旧版本代码
如果需要找回更早部署的旧版本代码,在完成上述账号授权的基础上按以下步骤操作:
- 执行
rsconnect::showDeployments(appName = "目标应用名称"),返回结果中会展示该应用所有历史部署记录,包含每个版本的部署时间、唯一版本ID等信息。 - 找到你需要的对应时间的版本ID后,在拉取命令中补充版本参数即可:
rsconnect::downloadApp(appName = "目标应用名称", version = "目标版本ID", destDir = "本地存储路径")
注意:你仅有权限获取自己账号下部署的应用代码,无法获取其他用户的应用源代码。如果部署应用时开启了自定义代码加密,需要先在shinyapps.io后台关闭加密后才能拉取到可正常阅读的源代码。
内容的提问来源于stack exchange,提问作者Kunal Anand
相关产品推荐
相关产品推荐

