我正在尝试使用shiny-server作为进程服务器:接收URL请求,处理R子例程并输出
JSON作为结果.但我无法在
JSON中直接将输出打印到浏览器.
是否可以这种方式使用闪亮的服务器?
PD:我知道这不是闪亮服务器的典型用法
非常感谢!
解决方法
听起来您正在尝试使用闪亮的服务器构建REST或JSON-RPC Web服务.目前这不可能(使用Shiny Server v1.2).
闪亮的服务器呈现文本/ html模板(shinyUI)页面并使用WebSocket回调来填充内容. @ScottChAmberlain的答案将在Web浏览器的HTML主体中呈现JSON.这不适用于程序化Web请求.
我发现rApache,Rook和RJSONIO是JSON Web服务的强大且高性能的解决方案.您需要熟悉配置Apache Web服务器,并根据您的平台构建Apache模块.
rApache是一个将R嵌入Apache Web服务器的模块,允许您托管Rook,brew和其他R框架.
Rook定义了R应用程序和Web服务器之间的接口.这使得使用正确的内容类型轻松交付JSON有效负载.
其他选择包括:
> OpenCPU – 专用的R HTTP服务器,明确支持JSON RPC
> node-rio – 与RServe接口的node.js服务器
> FastRWeb – 用于将Web服务器连接到RServe的CGI或PHP接口
> RServe – 二进制R TCP / IP服务器
> httpuv – R的HTTP和WebSocket服务器库> R内置rhttpd – 不建议用于生产用途
原文地址:https://www.jb51.cc/js/159442.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。