繁体   English   中英

Perl的cgi中的header(-type =>'text')打印什么

[英]What does the header(-type=>'text') print in cgi in Perl

我真的是cgi的新手,正在尝试将Perl cgi脚本转换为Python。

我在脚本中遇到了这些语句。

my $q = new CGI;
print $q->header(-type=>'text');

通过查看它,我可以理解q是一个标量变量,它具有从中调用CGI脚本的表单数据。

但是上面的打印语句有什么作用?

是否会检查表单标题字典中类型标题的值,并基于此显示True或False?

我没有Perl解释器来执行和检查输出。

开始输出

我们使用CGI对象打印输出的HTTP标头:

 print $q->header; 

这为您提供了以下HTTP标头:

 Content-Type: text/html; charset=ISO-8859-1 

如果您需要在标头中包含任何其他选项,例如,您可能不希望使用默认的“类型”,则可以将其传递给标头方法:

 print $q->header(-type => "text/plain"); 

这为您提供了以下HTTP标头:

 Content-Type: text/plain; charset=ISO-8859-1 

有关更多信息,请访问此处

引用CGI.pm文档

header()返回Content-type:标头。 您可以选择提供自己的MIME类型,否则默认为text/html 可选的第二个参数指定状态代码和人类可读的消息。 例如,您可以指定204,“无响应”来创建一个脚本,该脚本告诉浏览器什么也不做。 请注意,RFC 2616期望在那里存在人类可读的阶段以及数字状态代码。

 print $cgi->header( -Content_length => 3002 ); 

“它有什么作用?”

my $q = new CGI创建了一个新的https://metacpan.org/pod/CGI对象,它可以为您做很多事情。 最好的东西是参数,路径信息和标题。

print $q->header(-type=>'text')打印标题,它告诉浏览器正在生成什么。 -type=>'text'不够; 应该是完整的MIME类型,例如text/plaintext/htmltext/csvapplication/json或许多其他类型。 您甚至可以生成图像并输入image/jpeg或其他类型。

它还将为OK打印状态,即200 没有它,您的程序应该可以工作,但是添加它不会有任何危害。

您正在尝试将其移植到Python,但我不知道Python必须编写哪些选项,但是您可能不需要它。 只需用换行符( \\n )分隔要输入的标题条目(例如expires标记),然后添加另一个将标题与正文分隔开即可。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM