drop_download 中的错误:冲突 (HTTP 409)

Posted

技术标签:

【中文标题】drop_download 中的错误:冲突 (HTTP 409)【英文标题】:Error in drop_download: Conflict (HTTP 409) 【发布时间】:2021-07-13 11:28:56 【问题描述】:

我正在构建一个 Shiny,我希望用户从 Dropbox 帐户下载数据以在应用程序中使用。下载的数据是用户在之前的会话中输入的。

每当我尝试下载数据时,都会收到以下错误消息:

Downloading: 87 B     Warning: Error in drop_download: Conflict (HTTP 409).
156: <Anonymous>

我认为这不是 Dropbox 身份验证的问题,因为我可以成功地将文件上传到 Dropbox 文件夹,只是无法下载。

我最简单的可重现代码如下。对此的任何帮助将不胜感激!

#token <- drop_auth()
#saveRDS(token, "my-token.rds")
#drop_auth(rdstoken = "my-token.rds")

token <- readRDS("my-token.rds")
outputDir<-"Ed_app_save"

f_saveData <- function(data,name1) 
  
  data <- t(data)
  fileName <- sprintf(name1, as.integer(Sys.time()), digest::digest(data))
  filePath <- file.path(tempdir(), fileName)
  write.csv(data, filePath, row.names = FALSE, quote = TRUE)
  drop_upload(filePath, path = outputDir, dtoken = token)
  


f_loadData <- function(filename) 
  
  filesInfo <- subset(drop_dir(outputDir), name=filename)
  filePaths <- filesInfo$path_display
  data <- lapply(filePaths, drop_read_csv, stringsAsFactors = FALSE)
  data

  

ui <- shinyUI(fluidPage(
  
  br(),
  actionButton("save_inputs", "Save inputs"),
  actionButton("load_inputs", "Load inputs"),
  br(),
  br(),
  div(uiOutput("intro_text"))
  
))

server <- shinyServer(function(input, output, session)  
  
  
  observeEvent(input$save_inputs,
    
    f_saveData(c(1,2,3),"name_of_file.csv")
    
  )
  
  
  downloaded_stuff<-eventReactive(input$load_inputs,
    
    f_loadData("name_of_file.csv")
    
  )
  

  output$intro_text<-renderUI(
    
    tagList(div(
      ifelse(input$load_inputs==0,
         "Nothing loaded yet",
         downloaded_stuff())
      ))
  )
  
  
  
)

shinyApp(ui=ui,server=server)

【问题讨论】:

【参考方案1】:

我设法解决了这个问题,发帖以防它帮助其他人。

问题在于 loadData 函数 - filePaths 返回文件夹中的多个文件。以下设法解决了这个问题。

f_loadData <- function(filename) 
  
  filesInfo <- subset(drop_dir(outputDir), name=filename)
  temp <- filesInfo$path_display
  filePaths <- temp[which(temp==paste0("/",outputDir,"/",filename))]
  data <- drop_read_csv(filePaths)
  data
 

【讨论】:

以上是关于drop_download 中的错误:冲突 (HTTP 409)的主要内容,如果未能解决你的问题,请参考以下文章

进阶实验8-2.1 逆散列问题 (30分)

命名空间内部错误中的定义 _bounces 存在冲突

如何解决 C 中的冲突类型错误?

Ambari 服务器设置:sudoers 文件中的冲突错误

方法与超类中的方法冲突 - 覆盖给出错误 [重复]

如何解决android中的版本冲突错误?