来自脚本的格式错误的标题 错误的标头= <!DOCTYPE html>

nic*_*ndo 12 perl header perl-module www-mechanize

我在perl脚本上收到以下服务器错误:

来自脚本的格式错误的标题 错误的标头=:youtube_perl.pl,

这是我的源代码:


#!"C:\XAMPP\perl\bin\perl.exe" -T

use strict;
use warnings;

use CGI;
use CGI::Carp qw/fatalsToBrowser/;
use WWW::Mechanize;

my $q = CGI->new;

my $url = 'http://www.youtube.com';

my $mechanize = WWW::Mechanize->new(autocheck => 1);

$mechanize->get($url);

my $page = $mechanize->content();

print $page;
Run Code Online (Sandbox Code Playgroud)

提前致谢!

nic*_*ndo 23

弄清楚了.在我尝试打印页面之前,必须添加以下内容:

print "Content-type: text/html\n\n";
Run Code Online (Sandbox Code Playgroud)

我想perl无法在不首先定义标题的情况下打印html页面.

  • 当然Perl可以打印没有标题的HTML页面!但是,如果不打印标题,则无法编写CGI脚本.更好的是:`print $ q-> header();`.参见[perldoc CGI](http://perldoc.perl.org/CGI.html). (7认同)
  • @ user589294 - 不.Perl可以打印它们.但它们不是有效的HTTP响应.因此,如果您希望通过HTTP传输由Perl打印的HTML页面,您需要实际打印完整的HTTP响应 - 与Perl无关 (3认同)