PDF не отображается в браузере при чтении через Perl-скрипт - PullRequest
0 голосов
/ 21 декабря 2011

Я пытаюсь прочитать файл в моем сценарии perl, а затем установить заголовки соответствующим образом в зависимости от типа файла. PDF-файлы не отображаются, и я думаю, что мой серверный парень заблокировал эту вещь. Есть что-то, что я могу делать не так с этим скриптом?

my $q = CGI->new;   #instantiate the CGI object
my $filename = $q->param('file');   # get the file param from the query string
my $text = read_file($filename);    # read in the file

my($name, $path, $suffix) = fileparse($filename, qr/\..*/);

if($suffix eq ".pdf") {
    print $q->header('Content-type: application/pdf');
} else {
    print $q->header('text/html');
}

1 Ответ

4 голосов
/ 21 декабря 2011
$ perl -MCGI -E'my $q = CGI->new; print $q->header("Content-type: application/pdf");'
Content-Type: Content-type: application/pdf; charset=ISO-8859-1

Вы генерируете неверный заголовок.Используйте 'application/pdf' или -type => 'application/pdf' или 'Content-Type' => 'application/pdf' в качестве аргументов для header метода .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...