我有一个包含 html 文件的文件夹,我想启动一个简单的 HTTP 服务器来为请求的文件提供服务。
我一直在尝试使用 Rook
,但它需要一个生成 HTML 响应的应用程序功能。
library(Rook)
server <- Rhttpd$new()
server$start(quiet=TRUE)
server$add(name="my_app", app="path/to/app.R")
我想我可以通过某种方式告诉应用函数读取请求的 HTML 文件的内容并将其用作响应,但应该有更简单的方法。
最佳答案
我知道这篇文章有点旧,但我遇到了类似的问题,所以我想在这里发布我的解决方案。
[旁白:我想通过 rook 提供常规的 html/js/css 以及对 ajax 查询和统计解决方案的 json 响应——因此想使用 R]
R.server <- Rhttpd$new(); # Create server
# Use a Builder to add a
staticApp <- Builder$new(
Static$new(
urls=c('/www/css',
'/www/js/libs',
'/www/js',
'/www/img',
'/www'),
root=getwd()
))
R.server$add(app=staticApp, name="static")
R.server$start()
基本上我的工作目录包含一个名为 www 的文件夹,其中包含我所有的静态资源(在子文件夹 css、js 等中)。特别是如果文件夹 www 包含文件 index.html 那么可以通过 localhost:23702/custom/static/www/index.html访问它强>
其他更多以 R 为中心的操作的应用程序可以轻松地包含在构建器构建中。
将 www 移动到 root = file.path(getwd(),'www') 并递归搜索所有子文件夹可能不会更干净。
希望这对您有所帮助!
关于r - 如何在 R 中提供 html 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15117318/