我有一个PostgreSQL数据库,我使用Talend DI创建了RESTful Api,允许我查询表格 现在我的问题是如何在Shiny中调用我的Api并显示收到的数据?
http get response的例子:
ftp.storbinary(" ".join(["STOR", file_name]), ftp_file)
Ps:使用Shiny中的“RPostgreSQL”软件包直接连接到我的数据库,我没有问题,但我更喜欢将它与闪亮分开,这可以通过使用我的网络服务
答案 0 :(得分:2)
如果您拥有所有API设置,那么您可以执行以下操作:
require(shiny)
require(httr)
url <- "http://httpbin.org/get?"
ui <- fluidPage(
sidebarLayout(
sidebarPanel(
textInput('GETargs',"GET string"),
actionButton('sendGET','Send')
),
mainPanel(
verbatimTextOutput('GETresponse'),
dataTableOutput('table1')
)
)
)
server <- function(input, output, session) {
observeEvent(input$sendGET, {
getargs <- input$GETargs
if( is.null(input$GETargs) ) getargs <- ""
res <- GET(sprintf("%s%s",url, getargs))
output$GETresponse <- renderPrint(content(res))
output$table1 <- renderDataTable( as.data.frame(content(res)$args) )
})
}
runApp(shinyApp(ui,server))
例如,将文本框中的文本设置为“param1 = value1&amp; param2 = value2”会向所选URL发送GET请求。这可能不是你想要实现它的方式,但也许这可以让你知道如何做到这一点。
如果我使用示例查询sting,我可以通过键入以下内容来访问“param1”的值:
content(res)$args$param1