【问题标题】:What is the most mature JSON library for Erlang?Erlang 最成熟的 JSON 库是什么?
【发布时间】:2011-01-24 15:46:07
【问题描述】:

我想使用 YAML,但没有一个适合 Erlang 的成熟 YAML 库。我知道有一些 JSON 库,但想知道哪个最成熟?

【问题讨论】:

标签: json erlang


【解决方案1】:

Trapexit 为 Erlang 项目提供了非常酷的搜索功能。

在那里查找 JSON,您会发现将近 13 个结果。查看最新修订日期、用户评分、项目活动状态。

更新:我刚刚发现了一个类似的问题 n StackOverflow。显然,他们对erlang-json-eep-parser 解析器非常满意。

【讨论】:

  • 是的,我看过这里。你最喜欢哪个?
【解决方案2】:

看看来自 mochiweb 的那个:mochijson.erl

1> mochijson:decode("{\"Name\":\"Tom\",\"Age\":10}").   
{struct,[{"Name","Tom"},{"Age",10}]}

【讨论】:

  • 酷,现在看看。这是您的首选吗?
  • 或 mochijson2.取决于你的口味。建议的返回带有字符串的记录; '2' 不返回任何记录和二进制文件。
【解决方案3】:

我用的是yaws提供的json library

编辑:我实际上切换到 Jiffy,请参阅 Konstantin 的回答。

【讨论】:

    【解决方案4】:

    我最喜欢的是 mochijson2。 API 很简单,对我来说已经足够快了(不过,老实说,我实际上从来没有费心对其进行基准测试——我主要是对小数据包进行编码和解码),而且我一直在稳定地使用它“生产服务器”一年左右。记得安装mochinum,mochijson2用它来编码大数,如果你错过了,你会尝试编码大数,它会抛出异常。

    另请参阅:mochijson2 examples (stackoverflow)

    【讨论】:

      【解决方案5】:

      我更喜欢Jiffy。它适用于二进制文件并且速度非常快。

      1> jiffy:decode(<<"{\"Name\":\"Tom\",\"Age\":10}">>).
      {[{<<"Name">>,<<"Tom">>},{<<"Age">>,10}]}
      

      也可以编码:

      2> jiffy:encode({[{<<"Name">>,<<"Tom">>},{<<"Age">>,10}]}).
      <<"{\"Name\":\"Tom\",\"Age\":10}">>
      

      【讨论】:

        【解决方案6】:

        还可以查看jsx。 “一个用于消费、生产和操作 json 的 erlang 应用程序。受 Yajl 启发。”我自己还没有尝试过,但看起来很有希望。

        作为旁注;我通过Jesse 找到了这个库,Klarna 的一个 json 模式验证器。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2019-04-27
          • 2011-09-14
          • 1970-01-01
          • 1970-01-01
          • 2011-04-05
          • 1970-01-01
          • 2011-03-05
          相关资源
          最近更新 更多