JSON::XS "Usage"呱呱

标签 json perl perl-module

我似乎无法使用 JSON::XS的OO接口(interface)正常。以下呱呱叫我无法追踪的错误:

use JSON::XS;
my $array = ['foo', 'bar'];

my $coder = JSON::XS->new->utf8->pretty;
print $coder->encode_json($array);

这与以下内容有关:Usage: JSON::XS::encode_json(scalar) at test.pl line 5.我一直在梳理JSON::XS的代码而且我在任何地方都找不到“用法:”警告。我的用法似乎与文档中的示例非常匹配。谁能告诉我哪里出错了?

最佳答案

JSON::XS 有两个接口(interface):function 和 OO。

  • 在函数接口(interface)中,函数名是encode_json .
  • 在OO接口(interface)中,方法很简单encode ,而不是 encode_json .

  • 以下两个片段都有效:
    # Functional                  | # OO
    ------------------------------+-----------------------------------------
                                  | 
    use JSON::XS;                 | use JSON::XS;
    my $array = ['foo', 'bar'];   | my $array = [ 'foo', 'bar' ];
                                  |
    print encode_json($array);    | my $coder = JSON::XS->new->utf8->pretty;
                                  | print $coder->encode($array);
                                  |
    # ["foo","bar"]               | # [
                                  | #    "foo",
                                  | #    "bar"
                                  | # ]
    

    关于JSON::XS "Usage"呱呱,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14291605/

    相关文章:

    java - 如何在 Java 中的 JSONobject 迭代工作中进行迭代

    perl - 退出辅助 Perl 脚本并返回主程序

    perl - 在perl中声明全局变量

    perl - 如何将匿名子传递给 Find::File

    perl - 国家字表

    Perl 继承 - 谁是父类的调用者

    ios - 当我在 url 中包含空格时 AFHTTPRequestSerializer 中的 AfNetworking 失败

    asp.net-mvc - 从扩展 Apicontroller 的 MVC Controller 返回 Json

    javascript - 无法在我的 JSON 文件中发布数据

    linux - 安装 CPAN 模块而不打乱系统 Perl 安装