我有一个闪亮的应用程序(使用闪亮的仪表板)。 我试图传递url上的参数,使用这些参数生成一些数据然后将其返回给调用应用程序。我把它放在我的服务器中:
observe({
#all url params come in via the 'url_search' variable.
query <- parseQueryString(session$clientData$url_search)
action <- query[['action']]
if (!is.null(action)) {
#handle all supported request here
if(action == 'blah') {
#... do somework here to create my dataframe
shiny:::httpResponse(status=200, content_type="text/html; charset=UTF-8", mydataframe)
} else {
#... ignore unrecognized request
}
}
})
这有效,但不是以预期的方式:
正确处理请求,但首先发生的是渲染整个闪亮的应用程序。 然后,稍后,我看到了一个&#39; POST&#39;请求,我的原始网址作为推荐人,并将所需数据作为JSON数据发布,但我不知道它的去向。
我需要什么,以便我可以将我的网址(带参数)发送到我闪亮的应用程序,然后让它绕过其通常的交互模式,只需立即返回原始json数据而不渲染HTML?是因为我通过浏览器提出请求吗?我应该在R?
中以编程方式提出相同的网址请求更新:我尝试在我的网址上使用fromJSON(&#39; ...&#39;)也无法正常工作。我明白了:
Error in fromJSON(content, handler, default.size, depth, allowComments, :
invalid JSON input
答案 0 :(得分:1)
我不相信你只能使用Shiny来做到这一点。但是,有一些选项可让R表现得像API并返回JSON响应。请参阅:http://plumber.trestletech.com/