Вы можете получить параметр запроса в CGI-скрипте с помощью этого кода:
#!C:\Perl64\bin\perl.exe
use CGI;
my $cgi = CGI->new();
my $file = $cgi->param( "file" );
print "Content-Type: text/plain\n\n";
my $text = do {
open(my $f, "<:encoding(UTF-8)", $file)
or die("Can't open \$filename\": $!\n");
local $/;
<$f>
};
print $text;
, но это не работает, если запрос POST, я отправляю этот запрос, используя API выборки:
await fetch('cgi-bin/script.pl?file=..\foo.php', {
method: 'POST',
body: 'Some Text'
}).then(r => r.text());
если я открою скрипт в браузере, я получу содержимое файла.Есть ли способ сказать модулю CGI получать параметры из QueryString вместо данных POST?или любой другой простой способ анализа строки запроса без модуля CGI в Perl?