如何使用Mojolicious上传文件?

Kun*_*Jha 12 perl file-upload mojolicious

我一直在尝试基于perl的Mojolicious web框架.我尝试开发一个完整的应用程序而不是Lite.我面临的问题是我正在尝试将文件上传到服务器,但以下代码无效.

请指导我有什么问题.此外,如果文件被上传,那么它是在应用程序的公共文件夹中还是在其他地方.

提前致谢.

sub posted {
 my $self = shift;
 my $logger = $self->app->log;

 my $filetype = $self->req->param('filetype');
 my $fileuploaded = $self->req->upload('upload');

 $logger->debug("filetype: $filetype");
 $logger->debug("upload: $fileuploaded");

 return $self->render(message => 'File is not available.')
  unless ($fileuploaded);

 return $self->render(message => 'File is too big.', status => 200)
   if $self->req->is_limit_exceeded;

 # Render template "example/posted.html.ep" with message
 $self->render(message => 'Stuff Uploaded in this website.');
}
Run Code Online (Sandbox Code Playgroud)

小智 9

(首先,你需要一些带有method="post"和的表格enctype="multipart/form-data",以及一个input type="file"带有name="upload".只是为了确定.)

如果没有错误,那$fileuploaded将是一个Mojo::Upload.然后你可以检查它的大小,它的标题,你可以啜饮它或移动它,用$fileuploaded->move_to('path/file.ext').

取自一个奇怪的例子.