adds rest api connector
- routing setup with path to message_controller - messages api to database updated to function similar to a stack system (push, pop, peek, ..) - rest calls the same as database calls - setup default controller showing text message - parsing database output with Jason to client - adds curl examples
This commit is contained in:
@ -1,7 +1,7 @@
|
||||
defmodule BumpWeb.PageController do
|
||||
defmodule BumpWeb.DefaultController do
|
||||
use BumpWeb, :controller
|
||||
|
||||
def index(conn, _params) do
|
||||
render(conn, "index.html")
|
||||
text conn, "Bump API"
|
||||
end
|
||||
end
|
37
lib/bump_web/controllers/message_controller.ex
Normal file
37
lib/bump_web/controllers/message_controller.ex
Normal file
@ -0,0 +1,37 @@
|
||||
defmodule BumpWeb.MessageController do
|
||||
use BumpWeb, :controller
|
||||
|
||||
alias Bump.Messages
|
||||
|
||||
def index(conn, _params) do
|
||||
text conn, "Bump Api"
|
||||
end
|
||||
|
||||
def list(conn, %{"sender" => sender, "minutes" => minutes}) do
|
||||
list = Messages.list(sender, String.to_integer(minutes))
|
||||
text conn, Jason.encode!(list)
|
||||
|
||||
end
|
||||
|
||||
def clear(conn, %{"sender" => sender}) do
|
||||
Messages.clear(sender)
|
||||
text conn, "OK"
|
||||
|
||||
end
|
||||
|
||||
def push(conn, %{"sender" => sender, "message" => message}) do
|
||||
Messages.push(sender, message)
|
||||
text conn, "OK"
|
||||
|
||||
end
|
||||
|
||||
def pop(conn, %{"sender" => sender}) do
|
||||
message = Messages.pop(sender)
|
||||
text conn, Jason.encode!(message)
|
||||
end
|
||||
|
||||
def peak(conn, %{"sender" => sender}) do
|
||||
message = Messages.peak(sender)
|
||||
text conn, Jason.encode!(message)
|
||||
end
|
||||
end
|
Reference in New Issue
Block a user