【发布时间】:2016-04-15 14:17:02
【问题描述】:
我正在编写一个需要发出两个 GET 请求的 Mojolicious 模块/控制器;一个接一个地。第二个 GET 请求取决于第一个的响应数据。
我希望这两个请求都是非阻塞的。但是我不能轻易地从第一个非阻塞回调的上下文中“返回”以向第二个请求提供值。
sub my_controller {
my ($self) = @_;
$self->ua->get($first_endpoint, sub {
# handle response - extract value for second request?
});
my $second_endpoint = 'parameter not available here';
$self->ua->get($second_endpoint, sub {});
}
如果可能,我不希望将第二个请求嵌套到第一个回调中?
【问题讨论】:
-
如果第二个依赖于第一个,如果第一个失败就不会做,嵌套正是你需要做的。
-
嵌套是在处理非阻塞调用时指定两个操作的顺序,为什么要避免呢?
标签: perl mojolicious