2010-04-28 103 views
1

我试图使用Perl获取<input type="file" />元素的MIME类型,但没有实际检查文件本身的内容,换句话说,只使用HTTP标头。如何使用Perl CGI检查上传文件的MIME类型?

我只能得到“multipart/form-type”Content-Type的值,但我的理解是每个元素都会得到自己的MIME类型?

如何使用Perl查看子MIME类型?

回答

6

我假定您正在使用CGI.pm来做到这一点。如果你正在使用面向CGI的OO接口,你可以做这样的事情。

use strict; 
use warnings; 
use CGI; 

my $cgi = CGI->new; 

my $filename = $cgi->param('upload_param_name'); 
my $mimetype = $cgi->uploadInfo($filename)->{'Content-Type'}; 

如果您正在使用的程序界面,相当于将是:

use strict; 
use warnings; 
use CGI qw/param uploadInfo/; 


my $filename = param('upload_param_name'); 
my $mimetype = uploadInfo($filename)->{'Content-Type'};