2010-07-13 59 views
3

我想用http代理发送参数(phd => text , go => submit)。我怎样才能做到这一点?使用代理发送参数(perl)

我有这样的Perl代码:

my $ua = LWP::UserAgent->new(); 
my $req = POST 'http://example.com', 
[ phd => 'text' , go => 'submit']; 
$content = $ua->request($req)->as_string; 
print $content; 
+2

您是否阅读过文档? http://search.cpan.org/perldoc/LWP::UserAgent#Proxy_attributes 如果是这样,你能说出什么部分给你带来麻烦吗? – ysth 2010-07-13 02:34:18

回答

0

我写这一段时间前,当我在做同样的事情,你 - http://blog.gnucom.cc/?p=122 - 检查出来,让你觉得它有用我知道(它你正在尝试做同样的事情)。

我认为你可能会遇到的主要问题是你的POST数据被发送到错误的页面。当你发布数据时,你需要将它发送到某个地方,比如example.com/target_form.php。你的例子并不表明你在做这件事 - 所以希望我不要假设太多。 :D

1

添加的指令,使用户代理知道代理的位置:

$ua->proxy("http", "http://localhost:8888"); 

至于有关POST是一个有效的裸词(我可能不会注意到)的评论,我的模块像这样的东西:

use HTTP::Request::Common qw(POST GET);