Perl - 如何将散列转换为查询字符串?

Perl - How can I turn a hash into a query string?

如何将散列转换为查询字符串?我想找到一个不涉及使用 CGI 模块的解决方案。这是我想做的事情的一个例子,但不知道最好和最优雅的方法是什么,因为我对 Perl 比较陌生。

哈希:

my $data = {
         'key1' => 'value1',
         'key2' => 'value2',
         'key3' => 'value3',
         'key4' => 'value4'
};

到所需的查询字符串:

key1=value1&key2=value2&key3=value3&key4=value4
use URI qw( );
my $url = URI->new('', 'http');
$url->query_form(%$data);
my $query = $url->query;

如果您实际上是在尝试构建 POST 请求,请查看 HTTP::Request::CommonPOST