Erzeugung einer externen Javascript-Datei durch Perl
H-Man
- perl
0 Reiner0 Gero Takke0 Michael Schröpl
Hi !
Folgendes ist mein Problem: ich möchte über <SCRIPT SRC="..."> ein externes Javascript einbinden. Dieses Script soll von einem Perl-Skript erzeugt werden.
<SCRIPT SRC="cgi-bin/test.pl" LANGUAGE="JavaScript"> reicht nicht, auch das Ändern des Document-Headers in der Perl-Datei von text/html zu text/javascript half nicht.
Kann mir jemand helfen ? Sorry, falls im Archiv schon was dazu stand, aber ich habe nix gefunden :
Tschüss
Holger
Hallo Holger,
<SCRIPT SRC="cgi-bin/test.pl" LANGUAGE="JavaScript"> reicht nicht, auch das Ändern des Document-Headers in der Perl-Datei von text/html zu text/javascript half nicht.
poste den Kram per CGI doch in ein Datei "xxx.js".
Oder würde das Dir nicht reichen?
Es müßte aber auch Deine obige Lösung machbar sein, mit GIFs (z.B. bei Countern) geht's ja auch! Wichtig ist nur, daß das aufrufende Script/HTML-File befriedigt wird, d.h. bei Grafiken muß zumindest der Header "GIF89..." zurückkommen. Bei Javascript gibt es sicher auch irgendeinen Mime-Type, aber da weiß ich nicht, wie es aussehen muß. (such vielleicht mal im archive unter mime-types)
Kann mir jemand helfen ? Sorry, falls im Archiv schon was dazu stand, aber ich habe nix gefunden :
Schon wieder eine Aussage der Angst?
Ich glaube, das sollten wir uns zukünftig wirklich sparen!!! :-)
Tschüss
Holger
Alles Gute, ich hoffe, Dir ein wenig geholfen zu haben!
Reiner
Hi Holger,
hast du das perl-script zum anschauen?
ich habe lokal bei mir so eine situation gebastelt, und es hat wunderbar geklappt... mit content-type: text/html sogar.
bis bald
gero
<SCRIPT SRC="cgi-bin/test.pl" LANGUAGE="JavaScript"> reicht nicht
Das wäre ein Verweis auf ein *lokales* Unterverzeichnis "cgi-bin" innerhalb des Verzeichnisses, in dem Dein Skript läuft - das halte ich für unwahrscheinlich, daß Du das wirklich willst.
Außerdem: Wieso hat Dein Skript die Endung ".pl"? Wenn es ein CGI-Verzeichnis ist, würde ich die Endung ".js" verwenden - der Webserver begreift bei geeigneter Konfiguration immer noch, was er tun soll, und der HTML-Code-Leser braucht nie zu erfahren, daß dieses Skript dynamisch generiert wurde.
Alternative: Skript via SSI-EXEC einbinden. (Aber Deine Methode sollte bei korrekten URLs auch funktionieren.)