如何从 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)
我正在尝试使用安装在 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)