def submit(conn, %{"id" => id, "_json" => results}) do
...
end
(The)
_json
密钥由自动生成
Plug.Parsers.JSON
我想测试一下。但是,如果我写
post(conn, experiment_path(conn, :submit, %{})),
或者类似的
post(
conn,
experiment_path(conn, :submit, %{
"id" => "123",
"_json" => [%{"a" => 1, "b" => 2}, %{"a" => 3, "b" => 4}]
})
)
** (ArgumentError) maps cannot be converted to_param. A struct was expected, got: %{:_json => %{}, "id" => "123"}
恼人的是,我不确定这里到底需要什么类型的结构。我四处搜索了一下,但大多数在线资源似乎都在讨论如何测试
发送
JSON响应,而不是如何接收JSON数据。
我应该如何正确地指定控制器接收的JSON数据并编写测试?