私にとって、Mojolicious で JSON を解析することは不可能です。Mojolicious を更新し、次のコードの前に使用しましたが、JSON->new は非推奨です。
my $json = Mojo::JSON->new;
my $user_request = $json->decode($c->req->body);
my $err = $json->error;
チュートリアルから、$self->req->json が追加されていることがわかりましたが、これに対するすべての POST はエラーになり、コードが機能しなくなります。
curl -H "Content-Type: application/json" --data @body.json http://localhost:3000/checkaddress
私のbody.jsonは次のようになります
{
'id': 1
}
これがMojoliciousのRESTfulコードです
post '/checkaddress' => sub {
my $self = shift;
my $dump = $self->dumper($self->req->json);
};
コンソールログ
[Sat Feb 20 08:23:27 2016] [debug] 200 OK (0.001688s, 592.417/s)
[Sat Feb 20 08:24:38 2016] [debug] POST "/checkaddress"
[Sat Feb 20 08:24:38 2016] [debug] Routing to a callback
[Sat Feb 20 08:24:38 2016] [debug] undef
Mojo::JSON から $self->req->body を呼び出してから decode_json を呼び出すと、
[error] Malformed JSON: Expected string while parsing object at line 1, offset 5 at /home/aa/sempt2.pl line 15.
では、JSON を正しく解析するにはどうすればよいでしょうか。