3초만에 만드는 Elixir의 JsonAPI
4365 단어 Elixir
소개
얼마 전에, Elixir에서 JSON을 반환하는 간단한 API를 만들려고 할 때 오류가 발생한 기억이 있었기 때문에 적어 둡니다.
1초: 프로젝트 생성
프로젝트를 만듭니다.
mix phx.new jsonsan --no-ecto
Fetch and install dependencies? [Yn]
물론 Y
합니다.
설치가 완료되면,
cd jsonsan
mix phx.server
에서 서버가 시작된다고 생각합니다.
이번에는 라이브러리를 사용하지 않습니다.
2초: 컨트롤러 생성
우선 적당한 컨트롤러를 작성합니다.
jsonsan_web/controllers/data_controller.exdefmodule JsonsanWeb.DataController do
use JsonsanWeb, :controller
def index(conn, _params) do
msg = "PA PA YA!!"
json(conn, %{message: msg})
end
end
json()
를 사용하여 JSON을 반환합니다.
3초: 라우팅 설정
방금 만든 함수를 router.ex
에서 호출합니다.
jsonsan_web/router.exdefmodule JsonsanWeb.Router do
use JsonsanWeb, :router
pipeline :browser do
plug :accepts, ["html"]
plug :fetch_session
plug :fetch_flash
plug :protect_from_forgery
plug :put_secure_browser_headers
end
pipeline :api do
plug :accepts, ["json"]
end
scope "/", JsonsanWeb do
pipe_through :browser
get "/", PageController, :index
end
# Other scopes may use custom stacks.
scope "/api", JsonsanWeb do
pipe_through :api
post "/", DataController, :index
end
end
scope "/api"
라고 쓰는 곳이 처음에는 코멘트 아웃했다고 생각합니다.
이 부분의 주석 처리를 제거하고 DataController
를 호출하십시오.
동작 확인
이제 mix phx.server
를 사용하여 post 요청을 보내 JSON이 반환되는지 확인합니다.
이번에는 나는 postman에서 확인했습니다.
무사히 JSON이 돌아오고 있습니다! !
끝
처음으로 api를 elixir로 만들려고 생각했을 때 put_flush가 어떻게든 말한 에러가 전혀 모르는 기억이 있었기 때문에, 또 만드는 방법을 잊어버리면 이 기사를 보고 떠올리려고 합니다.
고마워요.
Reference
이 문제에 관하여(3초만에 만드는 Elixir의 JsonAPI), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Papillon6814/items/7ac465be9b543c91a617
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
mix phx.new jsonsan --no-ecto
cd jsonsan
mix phx.server
defmodule JsonsanWeb.DataController do
use JsonsanWeb, :controller
def index(conn, _params) do
msg = "PA PA YA!!"
json(conn, %{message: msg})
end
end
defmodule JsonsanWeb.Router do
use JsonsanWeb, :router
pipeline :browser do
plug :accepts, ["html"]
plug :fetch_session
plug :fetch_flash
plug :protect_from_forgery
plug :put_secure_browser_headers
end
pipeline :api do
plug :accepts, ["json"]
end
scope "/", JsonsanWeb do
pipe_through :browser
get "/", PageController, :index
end
# Other scopes may use custom stacks.
scope "/api", JsonsanWeb do
pipe_through :api
post "/", DataController, :index
end
end
처음으로 api를 elixir로 만들려고 생각했을 때 put_flush가 어떻게든 말한 에러가 전혀 모르는 기억이 있었기 때문에, 또 만드는 방법을 잊어버리면 이 기사를 보고 떠올리려고 합니다.
고마워요.
Reference
이 문제에 관하여(3초만에 만드는 Elixir의 JsonAPI), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Papillon6814/items/7ac465be9b543c91a617텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)