1

我正在尝试使用 R 中的管道工包创建一个 REST Web API。第一次运行良好,但第二次运行相同的代码时,它显示“节点堆栈溢出”错误。我只是尝试从我的函数中打印相同的消息。代码在下一节中给出

我还尝试通过为其分配额外的内存(最初是 8192 kb,然后是 7969177 kb)在 VMWare linux(Ubuntu)上运行它。但是结果始终是相同的错误

    # plumber.R
    #' Echo the parameter that was sent in
    #' @param msg The message to echo back.
    #' @get /echo
       function(msg="")
        {
          list(msg = paste0 ("The message is: '", msg, "'"))
        }
       library('plumber')
      plumber::plumb("plumber.R")$run
4

2 回答 2

1

在 R 中创建一个文件并将其命名为 myfile.R 在文件夹中创建另一个文件名它 plumb.R 两个文件都应位于同一文件夹或工作目录中

为 myfile.R 编写此代码

# myfile.R
#' @get /mean
#' 
normalMean <- function(samples=10){
  data <- rnorm(samples)
  mean(data)
}

在 plumb.R 中写

library(plumber)

r <- plumb("myfile.R")
r$run(port=8000)

之后打开你的谷歌浏览器并输入如下 http://localhost:8000/mean

很简单,它会给你输出

于 2019-11-06T11:30:49.773 回答
0

删除第一行“#plumber”,一切都会完美运行。

于 2020-03-01T12:26:27.877 回答