2016-02-24 154 views
4

我经历了所有的步骤去发现here,甚至得到了一个没有错误的以下信息:错误:无法打开在R上的连接闪亮

Application successfully deployed to https://user-name.shinyapps.io/projectFolder/ 

不过,我得到试图运行时ERROR: cannot open the connection消息程序。下面是我执导[R Studio中的文件夹(projectFolder)的内容:

ui.R    # contains only ui code 
server.R   # contains only server code 
script.R   # my full script, which contains global, ui, and server code 
gomap.js   # used for mapping app 
styles.css  # used for Shiny App 
data.csv   # my global data to be hosted on shinyapps.io 

下面是不同的脚本样本:

ui.R

ui <- shinyUI(navbarPage("Tab title", id="nav", 
        tabPanel("Interactive map", 
           div(class="outer", 

            tags$head(
            includeCSS("/Users/user/Documents/R/projects/styles.css"), 
            includeScript("/Users/user/Documents/R/projects/gomap.js") 
           ), 
            #### more UI code #### 
    )) 
)) 

也许这个问题是因为上面的文件路径?我需要setwdui.Rserver.R文件的顶部吗?还是因为内script.R你可以找到ui.Rserver.R完整的代码(这也许是多余的,我需要创建一个global.R文件,只是在数据加载和处理?

的首要问题是,你怎么破?备份文件加载到shinyapps.io

+0

您确定您可以访问该特定位置的css和js文件吗?如果您正在部署到您无法控制的远程服务器,则可能还会链接到在线资源或将文件保留在项目的本地。 –

+0

我已经读取和写入了这两个文件在这个特定的文件路径,并且所有的文件都是本地的。我只是好奇shinyapps.io如何处理这些路径。我的'global.R'脚本(我还没有做,但在'script.R'中)包含如下内容:'dat < - read.csv(“data.csv”,header = T)',所以我想知道这是否是问题。我直接部署到shinyapps.io。 – blacksite

+0

这就是我的观点。你可以肯定那些特定的文件夹可以在shinyapps.io上使用吗?我的猜测会很少(除非我在你的问题中遗漏了一些东西?)。 Ergo,你需要将这些文件制作成“本地”或从网上下载。 –

回答

6

GBR24,有些事情你可以尝试:

  1. 相对路径

    设置您的措辞目录到您的ui.R文件和server.r文件,然后使用相对路径小写你的子目录像CSS部署的时候,完全没有那些与\用户\我\ MYR \ PROJECT1 \ ...等

    Path layout example: 
    directory with ui.r file which will be 
    --css subdirectory 
    --data 
    --www 
    

    所以当你打电话,你已经放置在数据子目录中使用您的数据:

    myfile <- file.path("data", "data.csv") 
    dat <- read.csv(myfile, header=T) 
    
  2. NO CAPS

    这可能是与文件名和路径的大小写问题。这刚刚发生在我身上。在RStudio中进行部署时,如果发布内容为,“部署服务器警告中的文件路径区分大小写”,我会得到审阅问题对话框。

    因此,例如,Shiny服务器想要serverhead.R而不是serverHead.R。解决方案是将您的文件名称更改为小写。现在似乎可以使用.R扩展名大写。

    github上Windows用户:您需要提醒Github上要小写,因此不会与CaseNotLowered.R

    在Gitshell,会强制文件名文件推背:

    git mv -f OldName newname 
    

    感谢Github支持and answers here

  3. 看日志

    您可以在您的部署,从RStudio使用此命令为线索进行检查。从控制台的命令行使用您的帐户和应用程序名称:

    rsconnect::showLogs(account = "myshinyioaccount", appName = "myapp") 
    

    编辑它的前身是shinyapps::showLogs(感谢康拉德-MAC)

    比如我可以在连接错误消息之前看到一个文件名问题:

    ... 2016-07-12T13:13:26.061123+00:00 shinyapps[555]: Error in file(filename, "r", encoding = encoding) :

    2016-07-12T13:13:26.060971+00:00 shinyapps[555]: 2: eval.parent

    2016-07-12T13:13:26.061126+00:00 shinyapps[555]: cannot open the connection

希望这有助于!