Josef: kein auto-refresh trotz 'expire'

Hi,

nach Änderungen sollte beim user ein automatischer refresh der HTML-Seite direkt vom server erfolgen. Dies scheint unter IE5 nicht richtig zu klappen. Der User muss refresh händisch auslösen. Das klappt zwar, macht aber keinen Sinn. Der Meta-Tag

<head>
 ...
 <meta http-equiv="expires" content="0">
</head>

z.B. bewirkt nicht. Habt Ihr eine einfache (keine scripts... keep it simple:-)-Lösung?

Vielen Dank
Josef

  1. nach änderung??  also läuft vorher was ab?
    da könntest du einfach location.reload(); nehmen...

    1. nach änderung??  also läuft vorher was ab?
      da könntest du einfach location.reload(); nehmen...

      nee, nur auf der HTML-Seite selbst wird ein wenig abgeändert auf dem Server z.B. "Heute scheint die Sonne" oder "Heute regnet's" oder so was und das soll halt auch immer aktuell gezogen werden, wenn user die Einstiegsseite öffnet.

      1. Hallo.

        Hast du es mal mit
        <meta http-equiv="cache-control" content="no-cache">
        (für den lokalen Cache)
        oder
        <meta http-equiv="pragma" content="no-cache">
        (für den Proxy) versucht?

        Grüße
        Sascha

  2. Hi Josef,

    nach Änderungen sollte beim user ein automatischer refresh der
    HTML-Seite direkt vom server erfolgen.

    der Server hat nicht die Initiative bei HTTP.
    Nach dem Abschluß einer Anforderung weiß der Server nicht mehr, daß
    der Client überhaupt noch existiert.
    Insbesondere kann der Server dem Client nichts _senden_, auch keinen
    Auto-Refresh. Er kann nur Anforderungen beantworten.

    Wenn Du so etwas haben willst, dann mußt Du den _Client_ motivieren,
    immer wieder eine Anforderung an den Server zu senden.

    Dies scheint unter IE5 nicht richtig zu klappen. Der User muss
    refresh händisch auslösen. Das klappt zwar, macht aber keinen Sinn.

    Richtig.

    Der Meta-Tag
    <meta http-equiv="expires" content="0">
    z.B. bewirkt nicht.

    ... was? Er bewirkt, daß der Browser sich so verhalten _soll_, als
    hätte er den HTTP-Header "Expires: 0" erhalten. (Was übrigens ein
    Formatfehler ist, weil Expires einen Datumswert gemäß RFC 1123
    enthalten MUSS. Daß einige Browser diesen Wert fälschlicherweise
    als "jetzt" interpretieren, ist ein Verstoß gegen den HTTP-Standard.)

    Aber "Expires:" hat nichts mit Auto-Refresh zu tun. Es definiert zwar
    eine Aufbewahrungsperiode im Cache, aber diese hat nur dann eine Wir-
    kung, wenn der Browser motiviert wird, auf diese Ressource zuzugreifen

    • beispielsweise, wenn Du einen Link auf diese Seite anklickst.

    Genau diese Motivation für den Browser fehlt Dir aber.

    Dafür gibt es auch eine Lösung, wie Dir SelfHTML bei der Verwendung
    sinnvoller Suchbegriffe wie "refresh" (!) natürlich verraten hätte.

    Viele Grüße
          Michael