gpt4 book ai didi

arrays - 我可以使用字符串参数调用 Perl LWP Post 函数吗

转载 作者:行者123 更新时间:2023-12-04 01:16:41 26 4
gpt4 key购买 nike

我在向 UserAgent Post 函数(使用 https 模块)提供参数列表时遇到问题。这些例子的形式是:

my $ua = LWP::UserAgent->new();
my $response = $ua->post( $url, { 'param1', 'value1', 'param2', 'value2' } );

我要访问的 API 接受使用重复键名的参数,其中参数的顺序很重要。例如:

https://URL?feature_name='animal'&feature_value='dog'&feature_name='vehicle'&feature_value='boat'

由于键名重复,我无法将其作为散列传递给 POST 函数。是否可以将参数作为字符串传递?

最佳答案

LWP::UserAgent 支持将参数作为数组引用而不是哈希引用传递,因此您可以这样做:

my $ua = LWP::UserAgent->new();
my $response = $ua->post( $url, [
'feature_name', 'animal',
'feature_value', 'dog',
'feature_name', 'vehicle',
'feature_value', 'boat'
] );

另一个支持的选项是使用数组引用的散列:

my $response = $ua->post( $url, [ 
feature_name => [qw/animal vehicle/],
feature_value => [qw/dog boat/]
] );

有关支持选项的更多详细信息,您可以查看 HTTP::Request::Common 的文档,在 POST 部分,它是这样的:

Multivalued form fields can be specified by either repeating the field name or by passing the value as an array reference.

关于arrays - 我可以使用字符串参数调用 Perl LWP Post 函数吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63243461/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com