В попытке решить проблему я разместил в этом вопросе:
Можно ли отправить параметры POST в CGI-скрипт с помощью вызова system ()?
Пока единственное успешное решение проблемы - обмануть окружение, чтобы считать запрос GET. Я делаю это путем преобразования параметров POST в строку запроса, сохраняя эту строку в переменной среды по умолчанию, а затем изменяя переменную среды, которая сообщает серверу, какой метод использует этот запрос, на GET.
$ENV{'QUERY_STRING'} = $long_parameter_string . '&' . $ENV{'QUERY_STRING'};
$ENV{'REQUEST_METHOD'} = 'GET';
system {$perl_exec} $cgi_script;
По сути, я обманываю модуль CGI для чтения из переменной среды QUERY_STRING вместо STDIN, с которой он будет пытаться читать запросы POST.
Этот метод, кажется, работает до сих пор, но я беспокоюсь о непреднамеренных последствиях.
Мой вопрос: видите ли вы какие-либо потенциальные проблемы с этим?