在 R/Shiny 中获取、等待语法?

问题描述

在 R/Shiny 中,我们可以使用 library(promises) 和 library(future) 来异步处理事件。但是我似乎无法找到一种方法将它与 library(httr) 结合起来做类似于 fetch/await/async 的事情,您可以在其中设置一个承诺,当 httr 请求成功时它会解决。是否可以在 R/Shiny 中设置在 httr 请求成功时解决的承诺?或者你可以只做类似下面的事情,首先检查是否会出现 http 错误

library(shiny)
library(promises)
library(future)
plan(multisession)

ui <- fluidPage(
            textoutput("success"),textoutput("fail")

)

server <- function(input,output,session) {

    output$success <- renderText({
        # 201 success command should return
        get_command_1 <- httr::GET("http://httpbin.org/status/201")
        print(http_error(get_command_1))
        if(http_error(get_command_1)) {
            future(get_command_1) %...>%
            httr::content("parsed")
        }
        else {
            paste0(get_command_1$url," Failed")
        }
    })

    output$fail <- renderText({
        # but not 500 error command
        get_command_2 <- httr::GET("http://httpbin.org/status/500")
        print(http_error(get_command_2))
        if(http_error(get_command_2)) {
            future(get_command_2) %...>%
                httr::content("parsed")
        }
        else {
            paste0(get_command_2$url," Failed")
        }
    })

}

shinyApp(ui = ui,server = server)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...