【发布时间】:2015-01-14 16:38:36
【问题描述】:
我通过Rack::URLMap 安装了两个 Sinatra 应用程序。一个安装在根 (/) API 中,另一个安装在前端 /frontend 上。
我的问题是如何从前端向 API 发出请求?或者只是在它们之间进行通信,而不必发出 HTTP 请求(因为在我当前的环境中,这可能会导致 ECONNREFUSED,因为主机名可能与开发中的不同)。
我也可以获取应用程序的当前有效主机和端口,所以我回退到发出 HTTP 请求。
【问题讨论】:
-
我最初的想法是:如果它们不分开,为什么要分开安装?如果它们是分开的,则让客户端发出请求。
-
@iain 好吧,它们是分开的。 API 已经存在了很长时间,前端只是它的一个简单客户端。我想我必须从客户端向 API 发出请求。
-
我以前做过这个。我只是不记得何时何地甚至如何。我记得我必须直接使用 Rack。可能是一个调用函数。请检查 Rack 文档。
-
找到它:github.com/sinatra/sinatra#triggering-another-route 但现在我看到它可能不是您要找的东西。