我试图将我的地图解析为json字符串,我该如何使用毒药?
我已尝试过以下内容。
iex(19)> test = %{"api_key" => "sklfjklasfj"}
%{"api_key" => "sklfjklasfj"}
iex(20)> Poison.Encoder.encode(test, [])
[123, [[34, ["api_key"], 34], 58, [34, ["sklfjklasfj"], 34]], 125]
我期待的是
"{"api_key": "sklfjklasfj"}"
答案 0 :(得分:13)
我意识到毒药正在返回一个char_list,可以将其转换为类似的字符串。
iex(27)> to_string Poison.Encoder.encode(test, [])
"{\"api_key\":\"sklfjklasfj\"}"
截至2017年10月(Poison v3),代码为
iex(27)> to_string Poison.encode_to_iodata!(test, [])
"{\"api_key\":\"sklfjklasfj\"}"
或只是
iex(27)> Poison.encode!(test, [])
"{\"api_key\":\"sklfjklasfj\"}"
没有to_string
电话。