我正在尝试使用 Erlang 地图,例如
#{"breakfast" => "leftovers"}
并编码为 JSON 映射。
例如,我尝试使用 jiffy 转换列表
([email protected] /cdn-cgi/l/email-protection)27> binary_to_list(jiffy:encode(["alpha", "beta"] )).
"[[97,108,112,104,97],[98,101,116,97]]"
但我不确定如何将其转换为 JSON 对象。
当我尝试转换地图时,我得到“invalid_member_key
"
([email protected] /cdn-cgi/l/email-protection)28> jiffy:encode(#{"breakfast" => "egg sandwhich"}).
** exception throw: {error,{invalid_object_member_key,"breakfast"}}
in function jiffy:encode/2 (src/jiffy.erl, line 97)
我尝试了列表的漂亮格式化程序,并得到换行符
([email protected] /cdn-cgi/l/email-protection)31> binary_to_list(jiffy:encode(["alpha", "beta"], [pretty] )).
"[\n [\n 97,\n 108,\n 112,\n 104,\n 97\n ],\n [\n 98,\n 101,\n 116,\n 97\n ]\n]"
为什么这不起作用? json_object 是
-type json_object() :: {[{json_string(),json_value()}]}
| #{json_string() => json_value()}.
所以我期待地图转换能够正常工作。我尝试搜索并找到了读取 JSON 的示例,但没有找到将 Erlang 转换为可读 JSON 的工作示例。