2

Mojolicious :: Liteでファイルのアップロード/ダウンローダーを作成しようとしていますが、アップロードセクションに問題はありませんが、ダウンロードセクションで問題が発生しています。このコードを使用すると、小さなテキストファイルをダウンロードできますが、それ以外は0バイトのファイルになります。これを正しく行う方法について何かアドバイスはありますか?

get '/download/:file' => sub {
    my $self = shift;
    my $file = $self->param('file');
    $self->res->headers->content_type("application/x-download");
    $self->res->content->asset(Mojo::Asset::File->new(path => "./testdir/$file"));
    $self->rendered;
};
4

2 に答える 2

7

これを簡単にするためにプラグインMojolicious::Plugin::RenderFileをインストールできます。

plugin 'RenderFile';

get '/download/:file' => sub {
  my $self = shift;
  my $file = $self->param('file');
  $self->render_file('filepath' => "./testdir/$file");
};
于 2013-03-07T22:10:35.487 に答える