9

从 R 2.13 开始,R 带有一个内置的 Web 服务器。有没有一种简单的方法可以使用带有自定义端口号的 R 创建本地 Web 服务器?

在 python 中它将是(使用“ http://localhost:8080 ”):

python -m SimpleHTTPServer 8080

我知道 Rook,但我正在寻找一个简单的解决方案。

4

3 回答 3

4

看看Rook- 它在GitHub 上。关于设置端口号,看到?tools::help.ports它接受一个数字向量(整数),它将选择第一个可用的。还有sinartraCRANGitHub),但我宁愿选择Rook.

于 2012-09-28T11:59:04.047 回答
3

看起来这servr可能就是你这些天正在寻找的东西。

来自github

在某种程度上,这个包就像 python -m SimpleHTTPServer 或 python -m http.server。

https://github.com/yihui/servr

https://cran.rstudio.com/web/packages/servr/index.html

示例代码

writeLines("<h1>Hi</H1>", "index.html")

# install.packages("servr")
library(servr)
servr::httd()

# createTcpServer: address already in use
# To stop the server, run servr::daemon_stop(2) or restart your R session
# Serving the directory /Users/st/R/localhost at http://127.0.0.1:7826

将地址放在浏览器中:http: //127.0.0.1 :7826

于 2020-01-11T01:59:38.613 回答
2

这不是一个答案,而是一些开始的地方。

如果我们从终端运行 R(通过输入R),然后运行help.start(),它将启动一个本地主机并在浏览器中打开它。在我的,它打开http://127.0.0.1:16371/doc/html/index.html。这至少证明可以在没有任何外部包的情况下在 R 中打开 localhost。

我在R Source Code中找到了一些使这种情况发生的代码。

于 2020-01-11T01:54:15.233 回答