首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何用Lwp::Useragent发送http修补程序请求?

如何用Lwp::Useragent发送http修补程序请求?
EN

Stack Overflow用户
提问于 2014-05-28 11:56:11
回答 2查看 2.1K关注 0票数 3

我正在使用lwp::useragent来对抗salesforce rest。

我必须使用http修补程序请求。

对于get和post请求,我们使用以下代码:

要求LWP::UserAgent;

代码语言:javascript
运行
复制
my $ua = LWP::UserAgent->new;
$ua->timeout(10);
$ua->env_proxy;

my $get_response = $ua->get('http://search.cpan.org/',x=>'y');
my $post_response = $ua->post('http://search.cpan.org/',x=>'y');

不幸的是这不起作用。

代码语言:javascript
运行
复制
   my $patch_response = $ua->patch('http://search.cpan.org/',x=>'y');

我不知道如何使用这个模块。

这个问题有一个解决办法,如这里所解释的,How do I send a request using the PATCH method for a Salesforce update?

这是可行的,但这不是一个好的解决方案。

我发现使用python可以显式地对请求进行How do I make a PATCH request in Python?补丁,因此我假设perl也有一个选项。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-05-28 12:04:49

代码语言:javascript
运行
复制
my $request = HTTP::Request->new(PATCH => $url);
... Add any necessary headers and body ...
my $response = $ua->request($request);
票数 4
EN

Stack Overflow用户

发布于 2017-07-23 12:03:42

这件事最近变得容易多了。PATCH现在在HTTP::Message中实现(如POST)。

首先,更新HTTP::Message模块(到6.13或更高版本)。

然后

代码语言:javascript
运行
复制
my %fields = ( title => 'something', body => something else');

my $ua = LWP::UserAgent->new();
my $request = HTTP::Request::Common::PATCH( $url, [ %fields ] );
my $response = $ua->request($request);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23910962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档