2

我正在尝试使用Mojo::UserAgent来访问 eBay API。

一种选择是将 API 请求与 XML 有效负载一起使用,但我没有成功使用Mojo::UserAgent. 我没有找到该$ua->post方法的任何选项。

我也试过

my $tx = $ua->build_tx(POST => $ebay_api_url => $headers);
$tx->req->body($xml_body);
my $res = $ua->start($tx)->res->json;

没有成功。未为请求设置 XML 正文。

我需要做什么才能达到预期的效果?

我知道使用 JSON 请求的可能性,但这是一个保留计划。

4

3 回答 3

1

尝试像这样发布您的 $xml_body :

my $tx = $ua->post($ebay_api_url => form => $xml_body);
于 2015-11-24T02:12:52.227 回答
0

我遇到了与您类似的问题,但后来我意识到问题出在 xml 数据上。请确保您的 $xml_body 中没有任何尾随或前导空格。这有效:

   my $tx = $ua->post($ebay_api_url => $headers => $xml_body);

MojoliciousMojo::UserAgent很棒而且很轻。

于 2018-03-21T06:59:07.670 回答
0

您可能想要(post doc中的第二个示例):

my $tx = $ua->post($ebay_api_url => {Accept => '*/*'} => $xml_body);
于 2016-05-10T05:44:14.373 回答