Как получить имя из content-disposition в части MIME :: Entity? - PullRequest
0 голосов
/ 19 сентября 2011
my $Parser = new MIME::Parser;
my $entity = $Parser->parse_data( $body );
my @parts = $entity->parts;
for $part(@parts){   
    my $type=$part->mime_type;
    my $bhandle=$part->bodyhandle;

    $header = $part->head();
    $content_disp = $header->get('Content-Disposition');

     if ($type =~ /text/i){
         $bodydata = "";
         if (my $io = $part->open("r")) {
             while (defined($_ = $io->getline)) {
                 $bodydata .= $_;
             }
            $io->close;
            print $bodydata;
         }
     }
}

1 Ответ

2 голосов
/ 19 сентября 2011

Я думаю, вы ищете метод рекомендуемое_файл :

$header = $part->head();
$filename = $header->recommended_filename;

Обязательно проверьте возвращаемое значение на предмет здравомыслия.Обратите внимание, что это также может быть undef.

...