Dancer を使用して、読み書きするプロセスを実行するアプリを作成しようとしています。私のテストでは、これは Dancer の外では問題なく動作しますが、Dancer で実行すると、生成したプロセスからの出力をキャプチャできません。
たとえば、次のことを試すと
package My::App;
use Dancer ':syntax';
set serializer => 'JSON';
our $VERSION = '0.1';
use IPC::Run3;
get '/encode' => sub {
my ($out, $err);
my $in = 'test';
run3 'cat', \$in, \$out, \$err;
return $out;
}
$out で出力をキャプチャする代わりに、コンソールに出力するだけです。
これは、組み込みの Web サーバーを使用して Dancer アプリを実行しているときに発生します。