Klaus Mock: IIS: Perl und POST-Methode

Beitrag lesen

Hallo,

ich möchte beim IIS per POST-Methode Daten an ein cgi-Skript übergeben. Leider startet der IIS zwar den Perl-Thread, beendet diesen aber nicht. -->

read(STDIN, $inputData, $ENV{'CONTENT_LENGTH'});
use CGI qw(:standard);
print header();

Das Skript hängt sich auf. Kommentiere ich die 1. Zeile aus, so geht es.

Habt Ihr Lösungsansätze?

Das hat nichts mit dem IIS zu tun, sondern mit einem groben Fehler in Deinem Script. Die Zeile mit 'read(...)' ist definitiv falsch, wenn Du das CGI-Modul verwendest. Dieses beinhaltet auch das Einlesen von STDIN,  somit versucht das Script 2x$ENV{'CONTENT_LENGTH'} einzulesen, was aber nicht geht da von STDIN ja nur 1x$ENV{'CONTENT_LENGTH'} gelesen werden kann.

IMHO sind all diese selbstgestrickten Einlesefunktionen in der Regel nicht sinnvoll, da Module wie CGI.pm dies wesentlich ausgereifter erledigen.

Grüße
  Klaus