标签: mochijson2

Erlang:元组列表到JSON

我有一个元组列表,它们是http标头.我想将列表转换为JSON对象.我尝试mochijson2但无济于事.

所以我有以下内容:

[{'Accept',"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"},
 {'Accept-Charset',"ISO-8859-1,utf-8;q=0.7,*;q=0.7"},
 {'Accept-Encoding',"gzip,deflate"},
 {'Accept-Language',"en-us,en;q=0.5"},
 {'Cache-Control',"max-age=0"},
 {'Connection',"close"},
 {'Cookie',"uid=CsDbk0y1bKEzLAOzAwZUAg=="},
 {'User-Agent',"Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2.10) Gecko/20100914 Firefox/3.6.10"}]
Run Code Online (Sandbox Code Playgroud)

并希望这(二进制JSON字符串):

<<"{\"Accept\":\"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\",
 \"Accept-Charset\":\"ISO-8859-1,utf-8;q=0.7,*;q=0.7\",
 \"Accept-Encoding\":\"gzip,deflate\",
 \"Accept-Language\":\"en-us,en;q=0.5\",
 \"Cache-Control\":\"max-age=0\",
 \"Connection\":\"close\",
 \"Cookie\":\"uid=CsDbk0y1bKEzLAOzAwZUAg==\",
 \"User-Agent\":\"Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2.10) Gecko/20100914 Firefox/3.6.10\"}">>
Run Code Online (Sandbox Code Playgroud)

我尝试这个,其中A是元组的原始列表:

list_to_binary(mochijson2:encode(A)).
Run Code Online (Sandbox Code Playgroud)

我怀疑我需要把它变成mochijson2可以更好地解释的格式.然后转换为二进制.或者找出一种方法将所有字符表示为字符串(而不是将其作为整数列表).

非常感谢,如果你能用一些示例代码指出我正确的方向.

erlang json tuples mochiweb mochijson2

8
推荐指数
1
解决办法
4700
查看次数

在Erlang中使用mochijson2解码JSON

我有一个包含一些JSON数据的var:

A = <<"{\"job\": {\"id\": \"1\"}}">>. 
Run Code Online (Sandbox Code Playgroud)

使用mochijson2,我解码数据:

 Struct = mochijson2:decode(A). 
Run Code Online (Sandbox Code Playgroud)

现在我有了这个:

{struct,[{<<"job">>,{struct,[{<<"id">>,<<"1">>}]}}]}
Run Code Online (Sandbox Code Playgroud)

我试图阅读(例如),"工作"或"id".

我尝试使用struct.get_value但它似乎不起作用.

有任何想法吗?

erlang json mochiweb mochijson2

5
推荐指数
2
解决办法
6792
查看次数

标签 统计

erlang ×2

json ×2

mochijson2 ×2

mochiweb ×2

tuples ×1