use CGI; print "Content-type: text/html\n\n"; my $q = new CGI; #TODO #Timeout verhindern #Gültige URL Parameter my $strPARTNERID_valid ="BECHTLE"; my $strPWD_valid = "TEST"; #----------------------------------------------------- #Umgebungsvariablen - bei Bedarf zum Testen # #$ENV{CONTENT_LENGTH}; # #---------------------------------------------------- my @params = split(/&/,$ENV{QUERY_STRING}); foreach (@params){ ($key, $val) = split (/=/,$_); $param{$key} = $val; }; #Datenablage - in diesem Verzeichnis werden die Daten gespeichert my $strDataPath = "/srv/www/webshop1/web888w/dattrans/backup_bechtle_orderresponse/"; #Eindeutiger Dateiname inkl. Pfad bilden aus Timestamp + Zufallszahl z.B.: /srv/www/webshop1/web888w/dattrans/backup_bechtle_order/20100209_345.xml my $strTimeStamp = myCurrentDate().time(); #Randomize my $strDateiname = $strDataPath.$strTimeStamp."_".int(rand()*1000).".xml"; #Uebergebene URL Parameter ueberpruefen my $strPARTNERID = $param{PARTNERID}; if (length($strPARTNERID)>0 and ($strPARTNERID eq $strPARTNERID_valid)){ print "Alles OK - PARTNERID ist gueltig"; } else{ #in Datei loggen #Remote-Adresse,strPARTNERID #Response.Status = "401 Unauthorized" } my $strPWD = $param{PWD}; if(length($strPWD)>0 and ($strPWD eq $strPWD_valid)>0){ print "Alles OK -PWD gültig"; } else{ #in Datei loggen #Remote-Adresse,strPWD #Response.Status = "400"; } #Daten auslesen my $strData = ""; my $totalBytes; read(STDIN, $input, $ENV{'CONTENT_LENGTH'})or die "error in read: $!"; print $input;