diff --git a/lib/web/server/endpoint.ex b/lib/web/server/endpoint.ex index 137ff1a..669717f 100644 --- a/lib/web/server/endpoint.ex +++ b/lib/web/server/endpoint.ex @@ -10,5 +10,10 @@ defmodule Scopes.Web.Server.Endpoint do plug Plug.RequestId + plug Plug.Parsers, + parsers: [:urlencoded, :multipart, :json], + pass: ["*/*"], + json_decoder: Phoenix.json_library() + plug Scopes.Web.Server.Router end diff --git a/lib/web/server/router.ex b/lib/web/server/router.ex index 3227522..83b6660 100644 --- a/lib/web/server/router.ex +++ b/lib/web/server/router.ex @@ -9,9 +9,8 @@ defmodule Scopes.Web.Server.Router do pipe_through :api #resources "/", Controller, except: [:new, :edit] get "/", Controller, :index - get "/:domain/:action", Controller, :message - get "/:domain/:action/:class", Controller, :message - get "/:domain/:action/:class/:item", Controller, :message + match :*, "/*path", Controller, :message + get "/:domain/:class", Controller, :resource end end @@ -32,16 +31,22 @@ defmodule Scopes.Web.Server.Controller do def message(conn, params) do path_info = conn.path_info Logger.info(Scopes.Util.show [path_info, params]) - render(conn, :index, message: "Hello Message") + {head, params} = Map.pop(params, "path") + message = %{head: head, data: params} + #json(conn, message) + render(conn, :index, message) end end defmodule Scopes.Web.Server.JSON do - require Logger - require Scopes.Util + alias Scopes.Util - def index(%{message: text}) do - Logger.info(Scopes.Util.show [text]) - text + require Logger + require Util + + def index(resp) do + Logger.info(Util.show [resp]) + {_conn, message} = Map.pop(resp, :conn) + message end end