我来自php背景。我打算为凤凰城框架中的一个项目重写我的后端api。
我的前端期待这种格式的api json响应
{
"totalCount": 2,
"results": [
{
"idUser":1,
"name": "test"
},
{
"idUser":2
"name": "test2"
}
],
"success": true,
.....
}
响应中还有一些自定义属性。是否有任何库可以用来发送自定义JSON响应,而不会更改我的前端逻辑。
我查看了毒库,但我不太确定如何才能返回这样的响应。我是Elixir / Phoenix框架的新手。我真的很感激有任何帮助指出我正确的方向。
凤凰城默认使用毒药。有一个辅助方法json可以像这样使用:
defmodule MyController do
use Phoenix.Controller
def result(conn, _params) do
conn
|> put_status(:ok)
|> json(%{"totalCount" => 2,
"results" => [
%{
"idUser" => 1,
"name" => "test"
},
%{
"idUser" => 2,
"name" => "test2"
}
],
"success" => true
})
end
end
这是一个例子。是结果应该是一个数组?
defmodule Test do
def hello do
Poison.encode!(
%{
"totalCount" => 2,
"results" => [
%{
"idUser" => 1,
"name" => "test"
},
%{
"idUser" => 2,
"name" => "test2"
}
],
"success" => true,
}
)
end
end
Test.hello()