小さいCGI、しかし、現代
previous blog postで、Mojoliciousのようなフレームワークを使ってCGIスクリプトを書く現代の方法を探りました.しかし、コメントの中で指摘されているように、多くの利点にも関わらず、1つの重大な問題があります.実際にCGIサーバーに配備する必要がある場合、スクリプトが毎回読み込まれ、永続化されない場合、永続的なアプリケーションのために設計されたフレームワークは、各リクエストにオーバーヘッドを追加します.
CGIスクリプトは歴史的にCGIモジュールを使用して書かれています.しかし、このモジュールは大きくて、残酷で、それがremoved from Perl coreであるという重大なデザイン問題を持っています.
CGI::Tinyに入ります.これは1つだけのために構築されます:CGIプロトコルを提供する.ほとんどの場合、フレームワークはまだ正しい答えですが、実際のCGIプロトコル(共有されたWebホスティングなど)の下で実行させられるスクリプトの場合、またはスケールを必要としないCGIスクリプトをドロップする場合、CGI ::TinitはCGIに近代的な代替手段を提供します.PMあなたはinterface differences from CGI.pmまたはsuggested ways to extend CGI::Tiny scriptsを探検することができます.
以前のブログ記事の例では、CGI ::Tinitスクリプトと同等です.
CGIスクリプトは歴史的にCGIモジュールを使用して書かれています.しかし、このモジュールは大きくて、残酷で、それがremoved from Perl coreであるという重大なデザイン問題を持っています.
CGI::Tinyに入ります.これは1つだけのために構築されます:CGIプロトコルを提供する.ほとんどの場合、フレームワークはまだ正しい答えですが、実際のCGIプロトコル(共有されたWebホスティングなど)の下で実行させられるスクリプトの場合、またはスケールを必要としないCGIスクリプトをドロップする場合、CGI ::TinitはCGIに近代的な代替手段を提供します.PMあなたはinterface differences from CGI.pmまたはsuggested ways to extend CGI::Tiny scriptsを探検することができます.
以前のブログ記事の例では、CGI ::Tinitスクリプトと同等です.
#!/usr/bin/env perl
use strict;
use warnings;
use CGI::Tiny;
cgi {
my $cgi = $_;
my $input = $cgi->param('input');
$cgi->render(json => {output => uc $input});
};
Reference
この問題について(小さいCGI、しかし、現代), 我々は、より多くの情報をここで見つけました https://dev.to/grinnz/perl-cgi-but-modern-4630テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol