如何从AWS上的Rstudio服务器访问Restrserve API?

时间:2020-01-26 07:58:20

标签: r amazon-web-services api amazon-ec2 restrserve

我正在从安装在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,浏览器说无法访问该站点。

我错过了什么吗?有什么想法为什么不起作用?

1 个答案:

答案 0 :(得分:1)

可能您还需要两个步骤:

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