Add the redirect route.
This commit is contained in:
@@ -11,4 +11,6 @@
|
|||||||
Added a generator of a SafeString.
|
Added a generator of a SafeString.
|
||||||
** 0.2.1 <2023-07-07 Fri>
|
** 0.2.1 <2023-07-07 Fri>
|
||||||
Added a method to create an Link using a generator.
|
Added a method to create an Link using a generator.
|
||||||
|
** 0.3.0 <2023-07-08 Sat>
|
||||||
|
Added the redirect route.
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
defmodule LinkShortenerWeb.RedirectController do
|
||||||
|
use LinkShortenerWeb, :controller
|
||||||
|
alias LinkShortener.Links
|
||||||
|
|
||||||
|
def show(conn, %{"shorten" => shorten}) do
|
||||||
|
%{url: url} = Links.get_one_by_shorten(shorten)
|
||||||
|
redirect(conn, external: url)
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -18,6 +18,7 @@ defmodule LinkShortenerWeb.Router do
|
|||||||
pipe_through :browser
|
pipe_through :browser
|
||||||
|
|
||||||
get "/", PageController, :index
|
get "/", PageController, :index
|
||||||
|
get "/u/:shorten", RedirectController, :show
|
||||||
end
|
end
|
||||||
|
|
||||||
# Other scopes may use custom stacks.
|
# Other scopes may use custom stacks.
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ defmodule LinkShortener.MixProject do
|
|||||||
def project do
|
def project do
|
||||||
[
|
[
|
||||||
app: :link_shortener,
|
app: :link_shortener,
|
||||||
version: "0.2.1",
|
version: "0.3.0",
|
||||||
elixir: "~> 1.12",
|
elixir: "~> 1.12",
|
||||||
elixirc_paths: elixirc_paths(Mix.env()),
|
elixirc_paths: elixirc_paths(Mix.env()),
|
||||||
compilers: [] ++ Mix.compilers(),
|
compilers: [] ++ Mix.compilers(),
|
||||||
|
|||||||
Reference in New Issue
Block a user