Html Seiten nicht in Cache Laden

Dieses Thema im Forum "Programmieren" wurde erstellt von Quellemanie, 2. März 2004.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Quellemanie

    Quellemanie ROM

    Registriert seit:
    2. März 2004
    Beiträge:
    6
    Hallo zusammen! habe folgendes Problem möchte eine Html Seite (enthält java scripts) nicht in den Cache laden, d.h. die seite soll beim immer neu geladen werden! allerdings funktioniert das mit den Meta tags bei mir nicht wirklich!

    Anbei mal mein Code in gekürzter fassung:

    <HTML>
    <HEAD>
    <TITLE>DSL Geschwindigkeitstest</TITLE>
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="pragma" content="no-cache">


    <script>
    <!--
    time = new Date();
    starttime = time.getTime();
    // -->
    </script>

    <script>
    <!--
    time = new Date();
    endtime = time.getTime();
    Zufall = Math.random();
    if (endtime == starttime)
    {downloadtime = 0
    }
    else
    {downloadtime = (endtime - starttime)/1000;
    }

    if (downloadtime == 0)
    {downloadtime = .1;
    }


    kbytes_of_data = 1000; // data file size
    linespeed = kbytes_of_data/downloadtime;
    kbps = (Math.round((linespeed*8)*10*1.02))/10;
    kbytes_sec = (Math.round((kbytes_of_data*10)/downloadtime))/10;
    // -->
    </script>
    ....
     
  2. kalweit

    kalweit Hüter der Glaskugel

    Registriert seit:
    18. April 2000
    Beiträge:
    31.480
    Hab grad folgendes getestet - funktioniert zumindest:

    <a href="#" onclick="location.href='link.html?x='+encodeURI(Math.random());">

    Gruss, Matthias
     
  3. Quellemanie

    Quellemanie ROM

    Registriert seit:
    2. März 2004
    Beiträge:
    6
    Hm man könnte ja einfach auch die aktuelle uhrzeit mit datum übergeben müsste ja auch funktionieren oder?

    naja aber ohne funktionierende verlinkung bringt das auch nicht viel! :(
     
  4. Quellemanie

    Quellemanie ROM

    Registriert seit:
    2. März 2004
    Beiträge:
    6
    und der Code von der Testverlinkung:

    <html>

    <head>
    <title>DSL/ISDN Geschwindigkeitstester</title>
    <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
    <META HTTP-EQUIV="Expires" CONTENT="0">
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
    <meta http-equiv="cache-control" content="no-cache">
    </head>

    <body>

    <div align="center">
    <center>
    <table border="0" width="73%">
    <tr>
    <td width="33%">&nbsp;</td>
    <td width="33%"></td>
    <td width="34%"></td>
    </tr>
    <tr>
    <td width="33%">&nbsp;</td>
    <td width="33%"></td>
    <td width="34%"></td>
    </tr>
    <tr>
    <td width="33%">&nbsp;</td>
    <td width="33%"></td>
    <td width="34%"></td>
    </tr>
    <tr>
    <td width="33%">
    <p align="center">
    <input type=button value="Geschwindigkeitstest" onClick="location.href='Speedtester_ISDN.htm?x='+Math.random(); return true;"></p>
    </td>
    <td width="33%"><a href="Speedtester_ISDN.htm" onclick="location.href='Speedtester_ISDN.htm?x='+Math.random(); return true;">Start
    <td width="34%"></td>
    </tr>
    </table>
    </center>
    </div>

    </body>

    </html>


    nix dabei denken is nur für eine steite um den link zu testen!
     
  5. Quellemanie

    Quellemanie ROM

    Registriert seit:
    2. März 2004
    Beiträge:
    6
    Danke für den Tipp

    Funzt leider aber noch nicht! es wird aber auch leider keine Variable bei der verlinkung mitgegeben! (müsste man ja links unten angezeigt bekommen wenn man über den hyperlink mit der maus geht)

    anbei nochmal der momentane Code:

    <HTML>
    <HEAD>
    <TITLE>DSL Geschwindigkeitstest</TITLE>
    <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
    <META HTTP-EQUIV="Expires" CONTENT="0">
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
    <meta http-equiv="cache-control" content="no-cache">

    <script>
    <!--
    time = new Date();
    starttime = time.getTime();
    // -->
    </script>
    .....
    <script>
    <!--
    time = new Date();
    endtime = time.getTime();
    Zufall = Math.random();
    if (endtime == starttime)
    {downloadtime = 0
    }
    else
    {downloadtime = (endtime - starttime)/1000;
    }

    if (downloadtime == 0)
    {downloadtime = .1;
    }


    kbytes_of_data = 400; // data file size
    linespeed = kbytes_of_data/downloadtime;
    kbps = (Math.round((linespeed*8)*10*1.02))/10;
    kbytes_sec = (Math.round((kbytes_of_data*10)/downloadtime))/10;
    // -->
    </script>
    </HEAD>


    <BODY>
    <P ALIGN="RIGHT"><TABLE BORDER="0" CELLSPACING=0 WIDTH=175 ALIGN="Center">
    <TR><TD VALIGN="TOP"><FONT FACE="Arial" COLOR="#ff0000">
    <P ALIGN="CENTER"><B><I>Ihre Downloadgeschwindigkeit:</P>

    <P ALIGN="CENTER">
    <script><!--
    document.write(kbps);
    //--></script>

    </I>
    </B><I>K bits/s</P>
    <B><P ALIGN="RIGHT">

    <P ALIGN="CENTER">
    <script><!--
    document.write(kbytes_sec);
    //--></script>
    </B>K bytes/sec</P>

    <P ALIGN="CENTER">
    <B>
    <script><!--
    document.write(downloadtime);
    //--></script>
    </B>Sekunden</P>

    </I></FONT>
    </TD>
    </TR>
    </TABLE>




    </BODY>
    </HTML>
     
  6. kalweit

    kalweit Hüter der Glaskugel

    Registriert seit:
    18. April 2000
    Beiträge:
    31.480
    Folgendermaßen sollte es funktionieren, gleich mit Fallback, wenn JavaScript deaktiviert ist:

    <a href="test.html" onclick="location.href='test.html?x='+Math.random(); return true;">

    Gruss, Matthias
     
  7. Quellemanie

    Quellemanie ROM

    Registriert seit:
    2. März 2004
    Beiträge:
    6
    Gibt es die möglich keit bei der verlinkung gleich irgendwie diese javafunktion mit einzubinden?

    Z.b.

    ... a href="seite.html?x= Math.random() ...

    wie sagt man da das der letzte teil ein javascript befehl ist?
     
  8. Quellemanie

    Quellemanie ROM

    Registriert seit:
    2. März 2004
    Beiträge:
    6
    Also hab das jetzt mal versucht hinzubekommen mit der

    Math.Random Funktion von JavaScript zu realisieren!

    allerdings bekomm ich das nicht so wirklich in die verlinkung!

    wie soll das denn dann aussehen beim link?
     
  9. kalweit

    kalweit Hüter der Glaskugel

    Registriert seit:
    18. April 2000
    Beiträge:
    31.480
    Da der Cache immer auf der Seite des Users geführt wird, kannst du letztendlich das Verhalten des Cache nicht beeinflussen. Der einzig zuverlässige Weg ist, dem Browser eine neue Datei vorzutäuschen, in dem per Zufall ein beliebiger Parameter beim Aufruf übergeben wird:

    z.b. die Datei heißt test.html nun hängt man an diese einen Parameter: test.html?zahl=12312313 jetzt muss man dafür sorgen, dass dieser Paramter bei jedem Laden des verweisenden Dokuments verändert wird. Das kann man mit JavaScript oder auch serverseitig machen.

    Gruss, Matthias
     
Status des Themas:
Es sind keine weiteren Antworten möglich.

Diese Seite empfehlen