JS - Code verstecken?
Treziman
- javascript
Hallo Gemeinde der internationalen Computermanipulation,
ein paar Tage lang habe ich mich jetzt mal mit javascript und Sicherheit, bzw. Kopierschutz des JS, beschäftigt. Den Quelltext zu verbergen ist zwar erlaubt, halte ich aber auch für unsinnig. Berechtigt ist aber wohl das Interesse, seinen mühsam erstellten JS-Code schützen zu wollen. Auf "stackoverflow" habe ich auch etwas gefunden, was zu funktionieren scheint, habe aber auch selbst mal experimentiert. Heraus kam folgendes, wozu ich, als unstudierter Otto-Normal-Manipulierer, gern die Meinung der Insider-Profis (Gunnar, Rolf B, Martin, ...?) lesen würde.
Codes sind auf das Wesentliche beschränkt.
index.php:
<?php
session_start();
$_SESSION["erlaubnis"]=1;
...
echo"<div id='inhalt'></div>";
...
echo"<script src='dummy.js'></script>";
?>
dummy.js:
$(function(){
$("#inhalt").load("inhalt.php");
});
inhalt.php:
<?php
session_start();
if(isset($_SESSION["erlaubnis"])){
unset($_SESSION["erlaubnis"]);
...
code
...
echo"<script src='inhalt.js'></script>";
// (in inhalt.js ist der zu verbergende JS-Code enthalten)
}
?>
inhalt.js: (komplett zu verbergen; als Dateinamen sollte man einen schwer zu erratenden wählen)
$(function(){
...
code
...
$("#inhalt script").attr("src","was auch immer fürn Name");
// (Adresse der JS-Datei verschleiern)
});
Das scheint zu funktionieren. Im Quelltext erscheint zwar die dummy.js und kann auch angeklickt werden. Und man sieht, was darin steht (siehe oben). Kommt nun jemand auf die Idee, die inhalt.php direkt über die Adresszeile
aufrufen zu wollen, wird dies durch die $_SESSION["erlaubnis"]
verhindert. Im Inspektor (Webentwicklerwerkzeuge) erscheint der Pseudoname "was auch immer fürn Name".
Nach einem Aktualisieren der Seite, z.B. mit "F5", wird erstmal wieder die $_SESSION["erlaubnis"]
gesetzt, um das Laden der inhalt.php zu ermöglichen.
Hat man javascript im Browser deaktiviert, läuft die Seite garnicht.
Ich weiss nicht, habe ich etwas übersehen? Wie gesagt, es scheint zu funktionieren.
LG Treziman
@@Treziman
Ich hab dein Posting mal lesbar gemacht: den Code als solchen formatiert (Codeblöcke mit
```php
⋮
```
(bzw. js
; ~~~
statt ```
geht auch); Inlinecode mit ` … `{:.language-php}
.
Das nächste Mal machst du das bitte selbst. Dafür gibt’s den </>
-Button über dem Eingabefeld.
Hat man javascript im Browser deaktiviert, läuft die Seite garnicht. Ich weiss nicht, habe ich etwas übersehen? Wie gesagt, es scheint zu funktionieren.
„Läuft die Seite garnicht“ ist das Gegenteil von „scheint zu funktionieren“.
Außerdem kann jeder JavaScript-Quelltext, der im Browser läuft, auch im Entwicklertool angezeigt werden. Dein Vorhaben ist zum Scheitern verurteilt.
🖖 Живіть довго і процвітайте
Moin Treziman,
sowohl im Netzwerk-Tab der Webentwickler-Tools als auch in den Sourcen ist dein JavaScript-Code zu finden – und zwar exakt der, der auch beim jeweiligen Nutzer gerade ausgeführt wird. „Verstecken“ funktioniert nur partiell durch
Viele Grüße
Robert
Hallo Robert und Gunnar,
@Gunnar Danke fürs Lesbarmachen. Ich poste hier zu selten...
Stimmt, ihr (Robert) habt Recht. Im Entwicklertool unter Netzwerkanalyse (Mozilla) erscheint die JS-Datei und nach Doppelklick der Code. Mist!
Meine Idee war, künftige Projekte praktisch nur mit javascript zu realisieren. Da ist es wohl besser auf PHP zu setzen und javascript nur bedingt einzubauen, so als Hilfe. Das wäre eh sinnvoller, da man wohl einzelne DIV-Container mit Bildern nicht explizit aktualisieren kann, um aktuelle Bildupdates auch anzeigen zu können. Naja, gut, wieder was gelernt.
Das Beispiel unter: Beispiel stackoverflow klappt dann wohl auch nicht 100%ig.
@Gunnar
Ich habe den Link mittels dem Symbol oben eingebaut. War das richtig?☺️
Danke euch nochmal!
Treziman
Moin Treziman,
Stimmt, ihr (Robert) habt Recht. Im Entwicklertool unter Netzwerkanalyse (Mozilla) erscheint die JS-Datei und nach Doppelklick der Code. Mist!
Und genau das steht auch in den (höher gewerteten) Antworten auf die von dir gefundene Stackoverflow-Frage.
Meine Idee war, künftige Projekte praktisch nur mit javascript zu realisieren.
Damit sie nur auf dem Client läuft?
Da ist es wohl besser auf PHP zu setzen und javascript nur bedingt einzubauen, so als Hilfe.
Das kommt darauf an, was genau du vorhast.
Das wäre eh sinnvoller, da man wohl einzelne DIV-Container mit Bildern nicht explizit aktualisieren kann, um aktuelle Bildupdates auch anzeigen zu können.
Deine „DIV-Container“ heißen jetzt figure oder picture und die kannst du auch mit JavaScript manipulieren.
Das Beispiel unter: Beispiel stackoverflow klappt dann wohl auch nicht 100%ig.
Wie gesagt, das steht dort auch ausführlich geschrieben.
Viele Grüße
Robert
Hallo Treziman,
wie Gunnar und Robert schrieben - wenn Du Code geheim halten willst, dann schick ihn nicht zum Browser.
Clientseitig kannst Du Dinge nur verschleiern oder verstecken, was aber jemanden, der sich auskennt, in keinster Weise stoppt.
Web Assembly macht es schwerer, aber ich gehe davon aus, dass es dafür auch Decompiler gibt, die lesbaren Code daraus machen.
Früher hat man mal Java Applets, ActiveX Komponenten oder Flash genommen, um den Zugang zum Code zu erschweren. Wirklich helfen tut das nicht. Was Du rausschickst zum Browser, musst Du als „frei zugänglich“ ansehen.
Wenn Du Code als geheim behandeln willst, muss er auf deinem Server laufen. In PHP, in JavaScript, wenn Du einen node.js Server hast, ein Kater (Tomcat) hilft Dir mit Java, und ASP.NET bringst Du unter Windows mit IIS oder unter Linux mit Kestrel und einem Apache oder nginx Reverse Proxy zum laufen. ASP.NET Core bietet Dir mit Blazor auch eine Möglichkeit, C# Code als Web Assembly auszuliefern. Ich habe das aber selbst noch nicht gemacht.
Rolf
Danke euch allen nochmal.
Meine Idee war, künftige Projekte praktisch nur mit javascript zu realisieren.
Damit sie nur auf dem Client läuft
Nein, PHP kommt natürlich auch ins Spiel (AJAX).
Über Codieren und Decodieren, bzw. Compilen habe ich schon gelesen. Das ist mir aber den Aufwand nicht Wert wenns nicht 100% sicher ist. Ist auch nur eine Erschwernis.
Ich kam auf das Ganze durch einen Kumpel, der vor ein paar Jahren mal eine Webseite haben wollte. Im Hintergrund sollte dauernd eine Animation laufen, während im Vordergrund gearbeitet werden kann. Dies fiel mir wieder ein und da hab ich mal ein bisschen rumexperimentiert. Das läuft auch alles ohne Aktualisierung der Seite, zumindest solange, bis man Bilder anschauen soll, die ggf. vorher geändert wurden. Lade ich nämlich ein PHP-Script in den inhalt-DIV, werden die Bilder aus dem Browsercache geholt, weil sie gemäss damals dem Tip von Rolf
PHP
echo"<img src='imageloader.php?id=sowieso' />";
adressiert werden. Mit direkter Adressierung via JS
...
$("#bild1").attr("src","bildpfad");
...
klappts, aber dann sieht man den kompletten Pfad.
Das Bild selbst sieht man sowieso und es kann auch gespeichert werden.
Die Sache mit der Animation war auch so ein Fall. Animationen sind mir zwar nicht absolut neu, wohl aber die Art und Weise. Ich habs aber alleine hinbekommen - durch probieren, weil ich mit folgender Anweisung nicht viel anfangen kann:
CSS
offset-path: path("M-300,550 A10,5 0 1,1 1300,550");
M-300,550 und 1300,550 bestimmen Anfang und Ende. Soviel weiss ich. Aber was A10,5 0 1,1 bedeuten, weiss ich nicht. Ich hab auch im Net nichts gefunden, wo man das klar nachlesen kann. Kennt vielleicht von euch jemand eine Seite mit guter Erklärung?
Ich muss jetzt erstmal dringend auf die Couch...😇
Gruss Treziman
Hallo Treziman,
werden die Bilder aus dem Browsercache geholt, weil sie gemäss damals dem Tip von Rolf
echo"<img src='imageloader.php?id=sowieso' />";
adressiert werden.
Ich weiß nicht mehr, was wir damals diskutiert haben - aber ob eine per PHP geholte Ressource im Browsercache landet oder nicht, hängt am HTTP Verb (POST/GET - bei img src natürlich GET) und daran, welche Response Header (Cache-Control, Expires) Du im imageloader.php setzt.
Rolf
Servus!
Die Sache mit der Animation war auch so ein Fall. Animationen sind mir zwar nicht absolut neu, wohl aber die Art und Weise. Ich habs aber alleine hinbekommen - durch probieren, weil ich mit folgender Anweisung nicht viel anfangen kann:
CSS offset-path: path("M-300,550 A10,5 0 1,1 1300,550");
https://wiki.selfhtml.org/wiki/SVG/Tutorials/Pfade#elliptische_B.C3.B6gen
M-300,550 und 1300,550 bestimmen Anfang und Ende. Soviel weiss ich. Aber was A10,5 0 1,1 bedeuten, weiss ich nicht. Ich hab auch im Net nichts gefunden, wo man das klar nachlesen kann. Kennt vielleicht von euch jemand eine Seite mit guter Erklärung?
Ich muss jetzt erstmal dringend auf die Couch...😇
Gruss Treziman
Herzliche Grüße
Matthias Scharwies
@Matthias
Danke, damit kann ich was anfangen!
@Rolf
Es ging damals darum, dass Suchmaschinen Bilder nicht finden sollen. Und da sie Links folgen, hast Du mir den Tip mit dieser Adressierung gegeben. Bis dahin wusste ich nicht, dass das überhaupt so geht.
Ich habe vor dieser Antwort mal ein bisschen probiert. Klappt aber nicht. Die Bilder werden nicht aktualisiert. Hier mal der ganze Vorgang (Namen sind anders als im Versuchsprojekt):
User kommt auf Startseite "index.php". Ein einmaliger Vorgang, index.php wird danach nicht mehr aufgerufen, bzw. aktualisiert. Hier DIV-Container mit ID "inhalt", worin sich alles per javascript abspielt. Über Menü aufrufbar: "Bildtausch" und "Bilder ansehen". Bilder tauschen funktioniert. Neue Positionen werden per AJAX in DB gespeichert.
In Bilder ansehen u.a.:
<img id='bild1' src='' alt='Bild 1'/>
<img id='bild2' src='' alt='Bild 2'/>
<img id='bild3' src='' alt='Bild 3'/>
...
<img id='bild9' src='' alt='Bild 9'/>
javascript u.a.:
$("#bild1").attr("src","pfad/imageloader.php?bid=1");
imageloader.php u.a.:
if (file_exists($file)) {
header('Content-Description: File Transfer');
//header('Content-Type: application/octet-stream');
header('Content-type: image/png');
header('Content-Disposition: attachment; filename="'.basename($file).'"');
//header('Expires: 0');
header('Expires: Sat, 26 Jul 1997 05:00:00 GMT');
header('Cache-Control: no-cache, must-revalidate');
//header('Pragma: public');
header('Pragma: no-cache');
header('Content-Length: ' . filesize($file));
readfile($file);
exit;
}
Schaut man sich zuerst die Bilder an, werden sie korrekt angezeigt. Dann tauscht man 2, wechselt wieder über Menü zum Ansehen und da sind die Bilder noch in der alten Reihenfolge, obwohl Inhalt neu geladen. Also kommen sie aus dem Cache.
Ich wüsste an dieser Stelle nicht mehr weiter, ausser die Seite zu aktualisieren.
LG Treziman
Moin Treziman,
Es ging damals darum, dass Suchmaschinen Bilder nicht finden sollen. Und da sie Links folgen, hast Du mir den Tip mit dieser Adressierung gegeben. Bis dahin wusste ich nicht, dass das überhaupt so geht.
Suchmaschinen halten sich normalerweise an die robots.txt. Alles andere ist nur Obfuscation, weil du im Endeffekt kaum zwischen einem menschlichen Nutzer und einem Robot unterscheiden kannst.
Viele Grüße
Robert
Hallo Robert,
Suchmaschinen halten sich normalerweise an die robots.txt.
tja, sollten sie. Eine Garantie gibts dafür aber nicht.
LG Treziman
@@Treziman
Suchmaschinen halten sich normalerweise an die robots.txt.
tja, sollten sie. Eine Garantie gibts dafür aber nicht.
Es gibt eine Garantie, dass Suchmaschinen deine Bilder nicht finden: stell sie nicht ins Netz.
🖖 Живіть довго і процвітайте
@Gunnar
Es gibt eine Garantie, dass Suchmaschinen deine Bilder nicht finden: stell sie nicht ins Netz.
Ja danke, Gunnar! Und wenn sie in meinem Wohnzimmer herumcrawlen? Der Link dazu steht unten am Klingelknopf... 🤪😀
Aber kann mal bitte jemand den folgenden Code in der imageloader.php checken?
if (file_exists($file)) {
header('Content-Description: File Transfer');
// header('Content-Type: application/octet-stream');
header('Content-type: image/png');
header('Content-Disposition: attachment; filename="'.basename($file).'"');
// header('Expires: 0');
header('Expires: Sat, 26 Jul 1997 05:00:00 GMT');
header('Cache-Control: no-cache, must-revalidate');
// header('Pragma: public');
header('Pragma: no-cache');
header('Content-Length: ' . filesize($file));
readfile($file);
exit;
}
Rolf B meinte dazu:
aber ob eine per PHP geholte Ressource im Browsercache landet oder nicht, hängt am HTTP Verb (POST/GET - bei img src natürlich GET) und daran, welche Response Header (Cache-Control, Expires) Du im imageloader.php setzt.
Danke.
P.S. Hab gerade etwas entdeckt bezüglich Suchmaschinen und Link: Folgen Crawler JEDEM Link? Also auch z.B. einem, der in einer ausgelagerten CSS auf ein background-image verweist?
PPS by Rolf B: Code als PHP markiert (mit ~~~php
davor) und ein paar Einrückungen ergänzt
LG Treziman
Hallo Treziman,
Content-Type
und nicht Content-type
.no-store
.Ich bin kein Cache-Experte. Aber vielleicht nützt Dir das hier.
Rolf
Okay, vielen Dank Rolf!
Den Link werd ich mal in Ruhe durchsehen, ist ja alles auf englisch. Dann baue ich die Datei mal um. Mal sehen, obs dann klappt.
Kurz zur Info:
Es klappt in Edge und Chrome, aber - wiedermal - nicht in Mozilla.😡
Moin Treziman,
Es klappt in Edge und Chrome, aber - wiedermal - nicht in Mozilla.😡
was ist „es“ und wie äußert „es“ sich?
Viele Grüße
Robert
Moin Treziman,
Es klappt in Edge und Chrome, aber - wiedermal - nicht in Mozilla.😡
was ist „es“ und wie äußert „es“ sich?
Viele Grüße
Robert
Hallo Robert,
"es" bedeutet, dass die getauschten Bilder in Chrome und Edge ohne aktualisieren der gesamten Seite sofort korrekt angezeigt werden, während man bei Mozilla extra "F5" drücken muss (oder Strg+R oder auf "Aktuelle Seite neu laden" klicken). Über Mozilla hab ich mich schonmal in einem anderen Thread ausgelassen...
LG Treziman
Ich wurde als deprecated gekennzeichnet und werde alsbald nicht mehr unterstützt... Das W3C-Konsortium sieht für mich den Ruhestand vor...
Moin Treziman,
"es" bedeutet, dass die getauschten Bilder in Chrome und Edge ohne aktualisieren der gesamten Seite sofort korrekt angezeigt werden, während man bei Mozilla extra "F5" drücken muss (oder Strg+R oder auf "Aktuelle Seite neu laden" klicken).
Ohne den tatsächlichen Code zu sehen kann ich dazu nichts sagen.
Über Mozilla hab ich mich schonmal in einem anderen Thread ausgelassen...
Mag sein. Wenn es hier von Relevanz wäre, gäbe es wohl eine Link. Im Übrigen ist Mozilla eine Organisation.
Viele Grüße
Robert
Hallo Robert,
es ist eine einfache Sache: In der index.php gibt es einen DIV-Container mit der ID "inhalt"
HTML
<div id="inhalt"></div>
Mittels Jquery wird über ein Menü der Inhalt geladen. Zwei Menüpunkte sind da wichtig: 1. Bilder tauschen (Reihenfolge ändern) und 2. Bilder ansehen. Hat man Bilder getauscht und klickt auf "Bilder ansehen", wird die neue Reihenfolge in Edge und Chrome sofort angezeigt, während man in Firefox (von der Organisation Mozilla...) erst die Seite aktualisieren muss.
JQUERY
$("#inhalt").load("bilderansehen.php");
PHP (bilderansehen.php)
...
echo "<img src='imageloader.php?bildid=1' />";
...
In der imageloader.php: siehe dazu 01.04.2023 04:54
Inzwischen funktioniert es aber auch unter Firefox. Allerdings darf es da kein DIV-Container sein sondern ein iframe. Warum und weswegen... ich habe nicht die geringste Ahnung.
HTML
<iframe name="inhalt" id="inhalt" src=""></iframe>
Dazu JQUERY
$("#inhalt").attr("src","bilderansehen.php");
Einstein meinte einmal dazu: "Es gibt Menschen, die machen sich Gedanken über das Verhalten von Browsern. Andere beschäftigen sich mit weniger komplizierten Dingen, zum Beispiel mit der Relativitätstheorie..."
LG Treziman
@@Treziman
Einstein meinte einmal dazu: "Es gibt Menschen, die machen sich Gedanken über das Verhalten von Browsern. Andere beschäftigen sich mit weniger komplizierten Dingen, zum Beispiel mit der Relativitätstheorie..."
Ich habe da eine andere Theorie: Browser tun eigentlich ganz gut ihren Dienst – solange nicht jemand mit einer verrückten Idee daherkommt und von ihnen Dinge erwartet, für die sie nicht geschaffen sind.
🖖 Живіть довго і процвітайте
Einstein meinte einmal dazu: "Es gibt Menschen, die machen sich Gedanken über das Verhalten von Browsern. Andere beschäftigen sich mit weniger komplizierten Dingen, zum Beispiel mit der Relativitätstheorie..."
Wann bzw. welcher Einstein soll das gewesen sein?
Einstein meinte einmal dazu: "Es gibt Menschen, die machen sich Gedanken über das Verhalten von Browsern. Andere beschäftigen sich mit weniger komplizierten Dingen, zum Beispiel mit der Relativitätstheorie..."
Wann bzw. welcher Einstein soll das gewesen sein?
Was? Das weißt Du nicht? Elon „E=M*C²“ Einstein.
Energy = Milk * Coffee²
@@???
Einstein meinte einmal dazu: "Es gibt Menschen, die machen sich Gedanken über das Verhalten von Browsern. Andere beschäftigen sich mit weniger komplizierten Dingen, zum Beispiel mit der Relativitätstheorie..."
Wann bzw. welcher Einstein soll das gewesen sein?
Wohl derselbe Einstein, der zusammen mit seinen Nachbarn The Dark Side of the Moon hört.
🖖 Живіть довго і процвітайте
@@???
Einstein meinte einmal dazu: "Es gibt Menschen, die machen sich Gedanken über das Verhalten von Browsern. Andere beschäftigen sich mit weniger komplizierten Dingen, zum Beispiel mit der Relativitätstheorie..."
Wann bzw. welcher Einstein soll das gewesen sein?
Wohl derselbe Einstein, der zusammen mit seinen Nachbarn The Dark Side of the Moon hört.
Naja. Wenn man zu spät geboren ist und also nur Zugriff auf Geräte hat, deren Leistung in „Watt(PMPO)“ angegeben wird (und die man in den Geschirrschrank stellt, damit sie „unglaublich gut klingen“), kann man gute Musik eben nur dann halbwegs korrekt und also Genuss hören, wenn der Nachbar seine Anlage (deren Leistung noch in „Watt(sinus)“ angegeben wurde) freundlicherweise mal ein wenig aufdreht.
Moin,
Einstein meinte einmal dazu: "Es gibt Menschen, die machen sich Gedanken über das Verhalten von Browsern. Andere beschäftigen sich mit weniger komplizierten Dingen, zum Beispiel mit der Relativitätstheorie..."
Wann bzw. welcher Einstein soll das gewesen sein?
Dieser:
Glaube nicht alles im Internet.
— Albert Einstein
Viele Grüße
Robert
Moin Treziman,
es ist eine einfache Sache: In der index.php gibt es einen DIV-Container mit der ID "inhalt"
HTML <div id="inhalt"></div>
Die Foren-Syntax ist auch eine einfache Sache: Code wird nicht so ausgezeichnet,
~~~
HTML
<div id="inhalt"></div>
~~~
sondern so:
~~~html
<div id="inhalt"></div>
~~~
Das ergibt dann schön
<div id="inhalt"></div>
In der imageloader.php: siehe dazu 01.04.2023 04:54
Falls du deinen Beitrag meinst, kannst du diesen hier verlinken.
Hast du denn schon einmal in den Netzwerk-Tab der Browser-Entwicklertools geschaut, was da genau passiert, wenn jQuery (was hier eigentlich auch gar nicht nötig wäre, weil Javascript das von alleine kann) die Ressource neu lädt?
Dazu JQUERY
$("#inhalt").attr("src","bilderansehen.php");
Was für HTTP-Header sendet eigentlich bilderansehen.php
? Wird eventuell diese Ressource gecachet?
Viele Grüße
Robert
Moin Treziman,
Aber kann mal bitte jemand den folgenden Code in der imageloader.php checken?
if (file_exists($file)) { header('Content-Description: File Transfer'); // header('Content-Type: application/octet-stream'); header('Content-type: image/png'); header('Content-Disposition: attachment; filename="'.basename($file).'"');
Das ↑ ist doch eine Bitte an den Browser die Ressource herunterzuladen.
// header('Expires: 0'); header('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); header('Cache-Control: no-cache, must-revalidate'); // header('Pragma: public'); header('Pragma: no-cache'); header('Content-Length: ' . filesize($file)); readfile($file); exit; }
Was passiert eigentlich, wenn die Datei nicht existiert?
Viele Grüße
Robert
Hallo Robert,
Was passiert eigentlich, wenn die Datei nicht existiert?
Dann wird der Text unter (img) alt="..." angezeigt.
Hast du denn schon einmal in den Netzwerk-Tab der Browser-Entwicklertools geschaut, was da genau passiert, wenn jQuery (was hier eigentlich auch gar nicht nötig wäre, weil Javascript das von alleine kann) die Ressource neu lädt?
Das Skript wird jedesmal wieder abgearbeitet, Status 200. Bei fehlender Datei: Status 404.
Was für HTTP-Header sendet eigentlich bilderansehen.php? Wird eventuell diese Ressource gecachet?
Ich habe beim Rumprobieren in jeder Datei den Header mit "no-store" gesendet, abwechselnd und überall gleichzeitig. Im Head der index als
<meta http-equiv='Cache-Control' content='no-store' />
Firefox zeigt immer die alte Reihenfolge an, bis die Seite neu geladen wird.
Mit iframe funktionierts in jedem Browser.
LG Treziman
Moin Treziman,
Hast du denn schon einmal in den Netzwerk-Tab der Browser-Entwicklertools geschaut, was da genau passiert, wenn jQuery (was hier eigentlich auch gar nicht nötig wäre, weil Javascript das von alleine kann) die Ressource neu lädt?
Das Skript wird jedesmal wieder abgearbeitet, Status 200. Bei fehlender Datei: Status 404.
Und was steht da genau für die verschiedenen Browser? Wird da doch etwas gecachet? Ist die Reihenfolge des Response in den verschiedenen Browsern gleich oder unterschiedlich?
Viele Grüße
Robert
Hallo Robert,
Und was steht da genau für die verschiedenen Browser? Wird da doch etwas gecachet? Ist die Reihenfolge des Response in den verschiedenen Browsern gleich oder unterschiedlich?
--
Die Reihenfolge der Skripte ist immer gleich, steht in beiden Browsern dasselbe.
Bei Firefox wird die bilderansehen.php einmal aufgerufen, die imageloader.php mit der Bild-ID "0" aber zweimal, wobei einmal (immer nach dem ersten Aufruf dieser Datei) ausgegraut und unter "Übertragen" steht "Aus Cache". Setze ich bei "Cache deaktivieren" ein Häkchen, wird die imageloader.php?bid=0 auch nur einmal aufgerufen (unter Firefox). Bei Chrome wird sie immer nur einmal aufgerufen.
Wird da etwas "überschrieben"? Ich habe aber keine Ahnung, was da wirklich abläuft.
Danke und Gruss
Treziman
Ich wurde als deprecated gekennzeichnet und werde alsbald nicht mehr unterstützt... Das W3C-Konsortium sieht für mich den Ruhestand vor...