API:Caching data/de

Cache vom Client steuern
Das HTTP-Protokoll erlaubt es zu steuern, wie Browser und Internetproxys Inhalte im Cache speichern, durch verschiedene Werte, die im  Header angegeben sind. (Dies funktioniert nur bei GET-Anfragen.) Die API erlaubt dem Client, zwei dieser Werte zu setzen,  und , über API parameters   und.

sagt dem Browser, wie lange die Antwort im Cache behalten werden soll (in Sekunden). tut das Gleiche für geteilte Proxys. In der Praxis wird Letzteres für gewöhnlich dafür benutzt, den Reverse Proxy auf der Server-Seite anzuweisen (so wie bei Wikimedias ).

Fehler werden nie im Cache gespeichert. Benutzerspezifische Antworten werden als  markiert, sodass der Browser sie im Cache speichert, nicht aber öffentliche Proxys. Momentan benutzt die API standardmäßig die Spracheinstellung des eingeloggten Nutzers, also sind Antworten an eingeloggte Nutzer immer privat. Das kann vermieden werden durch Einsetzen der  API-Parameter (T97096).

Verbesserung der Cache-Trefferrate
Eine Anfrage wird nur vom Cache bedient, wenn die exakte URL im Cache gespeichert wurde. (E.g. if you make the same request with  and then with , the second won't be able to use the first's cache entry because the different maxage parameter makes the URL different.) If you pass a list of pages as a parameter, you might improve cache hit ratio by sorting and deduplicating them.

Controlling caching from an API module
Caching is specified by the  methods. Typically caching is only going to be a concern in the submodules, which should use   method instead, which they inherit from.