如何从 aws 上的 rstudio 服务器到达 restrserve api?

How to reach a restrserve api from rstudio server on aws?

我正在尝试使用安装在 AWS 实例上的 RStudo 服务器提供的非常有趣的软件包 RestRserve

这是我使用的代码:

library(RestRserve)
app = Application$new()
app$add_get(
  path = "/hello", 
  FUN = function(request, response) {
    response$set_body("Hello from RestRserve")
  })
backend = BackendRserve$new()
backend$start(app, http_port = 8080)

我认为该应用已启动 运行,消息似乎正确:

{"timestamp":"2020-01-26 07:42:30.957686","level":"INFO","name":"Application","pid":1872,"msg":"","context":{"http_port":8080,"endpoints":{"HEAD":"/hello","GET":"/hello"}}}
-- running Rserve in this R session (pid=1872), 2 server(s) --
(This session will block until Rserve is shut down)

但是,当我尝试像这样使用实例的 IP 地址访问应用程序时:http://35.180.45.129/hello 浏览器显示无法访问该站点。

我错过了什么吗?关于为什么这不起作用的任何想法?

您可能需要两个额外的步骤:

  • 确保允许从 Internet 到 8080 端口的流量
  • 确保您使用实例的 public IP(或更好的 DNS)