mirror of
https://github.com/mgerb/classic-wow-forums
synced 2026-01-10 09:02:50 +00:00
23 lines
481 B
Elixir
23 lines
481 B
Elixir
defmodule MyAppWeb.PageController do
|
|
use MyAppWeb, :controller
|
|
|
|
# serve index.html - cache the file after reading it to minimize IO
|
|
@spec index(map, map) :: any
|
|
def index(conn, _params) do
|
|
|
|
file = Cachex.get(:myapp, "index.html")
|
|
|> get_file
|
|
|
|
conn
|
|
|> html(file)
|
|
end
|
|
|
|
defp get_file({:ok, data}), do: data
|
|
defp get_file({:missing, _}) do
|
|
file = File.read!("./priv/static/index.html")
|
|
Cachex.set(:myapp, "index.html", file)
|
|
file
|
|
end
|
|
|
|
end
|