Perl 如何从POE::Component::Client::HTTP获取响应?
我的组件Perl 如何从POE::Component::Client::HTTP获取响应?,perl,poe,Perl,Poe,我的组件 POE::Component::Client::HTTP->spawn( Agent => "MyScript/1.0", Alias => 'browser', Timeout => 60, FollowRedirects => 3, ); sub connected { my ($heap,$kernel) = @_[HEAP,KERNEL];
POE::Component::Client::HTTP->spawn(
Agent => "MyScript/1.0",
Alias => 'browser',
Timeout => 60,
FollowRedirects => 3,
);
sub connected {
my ($heap,$kernel) = @_[HEAP,KERNEL];
my $request = POST 'http://mydomain.com', [qw(hello world this is my script)];
$kernel->post('browser','request','response',$request);
}
sub response {
print "I am inside the response handler!\n"; # It never reaches here
}
这是从中发送HTTP请求的另一个POE组件的事件处理程序
POE::Component::Client::HTTP->spawn(
Agent => "MyScript/1.0",
Alias => 'browser',
Timeout => 60,
FollowRedirects => 3,
);
sub connected {
my ($heap,$kernel) = @_[HEAP,KERNEL];
my $request = POST 'http://mydomain.com', [qw(hello world this is my script)];
$kernel->post('browser','request','response',$request);
}
sub response {
print "I am inside the response handler!\n"; # It never reaches here
}
我检查了我的Web服务器日志,HTTP请求被正确发送,但它没有将HTTP::Response对象(或任何东西)发送到响应处理程序。我做错了什么?对不起,这个问题可以结束了。我应该用响应处理程序创建一个POE::会话,并从它的_start处理程序调用$kernel->post()。对不起,这个问题可以解决了。我应该用响应处理程序创建一个POE::会话,并从它的_start处理程序调用$kernel->post()