ChrisB: Javascript einbinden aber http access verhindern

Beitrag lesen

Hi,

ich möchte im HTML-Code eine Javascript-Datei bzw. Javascript-Code einfügen ohne dass Zugriff per http auf diese Datei möglich ist.

Also Beispielsweise eine .js-Datei per <script type="text/javascript" src="any.js"> einbinden, selbige soll aber nicht im Browser durch http://www.domain.de/any.js abruf- und einsehbar sein.
Geht das?

Nein.

Als Lösung hatte ich mir überlegt, statt der .js-Datei z.B. eine .php-Datei einzubinden:

<script type="text/javascript" src="js.php">
In der js.php wird dann der Javascript-Code mit echo ausgegeben. Vorher wird in der index.php eine Konstante definiert, die in der js.php auf Existenz überprüft wird, ansonsten wird kein Javascript-Code ausgegeben. Das ganze funktioniert leider so nicht.

Natuerlich nicht. Woher soll ein Script Kenntnis davon haben, ob in irgendeiner anderen, vollkommen unabhaengigen Scriptinstanz irgendwelche Konstanten definiert sind? (_So etwas_ koennte man ueber Sessions machen - aber fuer das, was du vorhast, taugt auch das nichts.)

Es ist reichlich unsinnig Javascript-Code, der per HTTP abgerufen werden soll, vor dem Abruf durch HTTP schuetzen zu wollen - also tu dir selbst einen Gefallen, und vergiss diesen Unfug.

[...] Bei der Firefox - Extension kommt erschwerend hinzu, dass ich dort nicht mit php arbeiten kann, das Sicherungssystem also komplett aus Javascript bestehen muss.

Wenn du mal kurz ein wenig logisch nachdenkst, merkst du schnell, dass sich diese Katze selbst in den Schwanz beisst: Du willst Javascript-Code schuetzen - wenn du dafuer Javascript verwenden wuerdest, muesstest du dieses aber ebenfalls schuetzen (da sonst die Art des Schutzes erkenn- und damit aushebelbar waere) - und dieses dan wiederum, und wiederum ...

Dazu fällt mir momentan überhaupt keine Lösung ein.

Es gibt keine.

MfG ChrisB