我需要能够从 ajax 调用的数据部分解码多个参数到 perl cgi 脚本。我知道其他一切都在使用我的代码,但无论出于何种原因,我似乎都无法让 JSON 模块的 decode 方法正常工作以再次将数据从 JSON 格式恢复为参数。我的 jQuery ajax 调用中的数据是这样设置的,没错。
data: {
maxRows: 5,
productName: request.term
}
但是,我尝试将其解析为 perl 的方式有问题。
my $json = JSON->new->utf8->allow_nonref;
my $json_text = $cgi->param('data');
my $json_array = $json->decode( $json_text );
我知道正确的最终结果应该是一个哈希数组。如果我能走到那一步,我知道我会没事的。但是,我的 decode 行不起作用,实际上导致整个脚本在执行时失败。
我环顾四周,我就是想不通。我很确定这是一些非常小的调整。
我是否通过使用 $cgi->param('data') 正确获取参数?它最终会被命名为数据,还是别的什么?