0

我正在尝试发布以下 JSONMojo::UserAgent

use Mojo::UserAgent;

my $ua = Mojo::UserAgent->new;
my $ip = ...
$mojo->post( 'https://$ip:443/query' => json =>  { value=> True, Query => ... } );

我收到一个错误

“严格潜艇”时不允许裸词“JSON::true”

但是如果我将它设置为True它被解释为一个字符串而不是一个 JSON值。

知道如何发布 JSON真实值吗?

4

1 回答 1

5

您可以将 Mojo::JSON::true 和 Mojo::JSON::false 用于相应的 JSON 值。如果需要,您还可以将标量引用\1用于 true 和\0false。Perlundef将被转换为 JSON null。

来自Mojo::JSON 文档

文字名称将与 Mojo::JSON 常量或类似的本地 Perl 值相互转换。

true  -> Mojo::JSON->true
false -> Mojo::JSON->false
null  -> undef

此外,标量引用将用于生成布尔值,基于它们的值是真还是假。

\1 -> true
\0 -> false
于 2015-11-23T17:16:12.307 回答