如何获取凤凰应用程序的“基本网址”?

Nat*_*ong 2 elixir phoenix-framework

当我在本地运行我的 Phoenix 应用程序时,所有请求的基本 URL 类似于http://localhost:4000. 在生产中,它类似于https://example.com/.

我想将此基本 URL 传递给我的 JavaScript。我怎么才能得到它?

笔记:

  • 我不想检查conn;这是我想在编译或启动期间设置的东西,而不是在请求时设置。
  • 我知道我可以检查Application.get_env(:myapp, MyApp.Endpoint)[:url][:host] %,但这不包括方案(httphttps)或端口。如果我必须从几个地方把它拼凑起来,我可能可以,但我宁愿不要。

mic*_*ala 7

您可以使用 MyApp.Endpoint.url()

该链接指向 1.3 文档,因为它记录了应用程序中生成的所有函数Endpoint作为回调,但该函数至少从 1.2 开始就可用(我之前没有检查过)。