我在 CGI 脚本中进行了以下验证,它将检查 GET 方法并在未使用 GET 方法时返回 405 HTTP 状态代码。不幸的是,当使用 POST 或 PUT 时,它仍然返回 200 状态 OK。
my ($buffer);
# Read in text
$ENV{'REQUEST_METHOD'} =~ tr/a-z/A-Z/;
if ($ENV{'REQUEST_METHOD'} eq "GET")
{
$buffer = $ENV{'QUERY_STRING'};
}
else
{
$cgi->$header->status('405 Method Not Allowed')
print $cgi->header('text/plain');
}
我还是 CGI 编程的新手,所以我想这里的某个人可能会向我介绍如何使用 CGI 和 HTTP 状态返回。如果提供了一个好的 CGI 文档,那将是非常棒的,因为搜索返回的大多数是 CPAN(已经阅读了几次)和非常古老的非面向对象的教程。