在 HypnoToad 发送页面后,如何让我的代码执行某些操作?(注意:我正在回答我自己的问题。我发布这个,因为 StackOverflow 指出我之前的问题并没有直接解决我的问题,尽管它确实包含我需要的线索。)
示例代码:
use Mojolicious::Lite;
get "/index" => sub {
my $c = shift;
$c->render("renderThis");
# Do something after rendering
};
app->start('daemon', '-l', 'http://*:8080');
__DATA__
@@ renderThis.html.ep
% layout "template" ;
<h1>Hello World</h1>
@@ layouts/template.html.ep
<!DOCTYPE html>
<html><head></head><body>
%= content
</body></html>
render 似乎缓冲了它的 http 输出并在代码块完成后发送它。我希望在发送页面后执行某些操作。可以通过将以下内容代替“做某事”注释来观察缓冲。
sleep 15;
say "Wow, that was a long time!";
我在win7上,因此仅适用于unix的解决方案将不起作用。