2011-01-09 11 views
0

Ich benutze einfache Javascript, um einen Ajax-Aufruf, der gut funktioniert.Aber sofort, wenn ich die Seite aktualisieren, wird der Aufruf erneut ausgeführt.Ist das ein Problem von Ajax Anruf zwischengespeichert und wie zu beheben es? Ich benutze PHP für serverseitige Sprache.Ajax Call Caching

+0

Möchten Sie nicht, dass es zwischenspeichert? – qwertymk

Antwort

1

Der Browser wird caching rules für Ajax-Anfragen wie alle anderen Anfragen zu ehren. Wenn Sie in Ihrem php-Skript, das die Antwort auf den Ajax-Aufruf liefert, richtig zwischenspeichern, sollten Browser es zwischenspeichern und Sie werden keinen Leistungseinbruch haben.

+0

Können Sie bitte für die Implementierung in die richtige Richtung zeigen? –

+0

Ein Link zu einem Blogpost hinzugefügt, der das http-Caching erläutert. – Seldaek

0

Wenn Sie eine Seite aktualisieren, wird jedes JavaScript neu gestartet. Wenn Sie ein Ajax als Reaktion auf das Laden der Seite ausführen, wird es erneut ausgelöst. Wenn die Antwort auf die Ajax-Anforderung HTTP-Header für die Cache-Steuerung enthält, sollten diese gelten.

+0

Nun wird die Ajax-Anfrage auf Knopfdruck ausgeführt. Jetzt, wenn ich die Seite verweise, sollte die Ajax-Anfrage nicht ausgeführt werden. –

+0

Wenn alles andere gleich ist, wird es nicht. – Quentin

+0

Danke, dass ich mit Smarty benutze und vielleicht könnte es aufgrund mehrerer Dateien enthalten sein. –