Herr,
Wir arbeiten an einer E-Bibliothek, in der pdf.js verwendet wird, um die PDF-Dateien Stück für Stück zu laden. Die Dateigröße von PDFs beträgt normalerweise 16 MB. Beim ersten Laden von PDF.JS (Cache im Browser deaktivieren) wird die PDF-Datei in Teilen heruntergeladen. Aber wenn ich die Seite aktualisiere (ohne den Chache im Browser zu deaktivieren), lädt die PDF.Js die gesamte PDF-Datei anstelle eines Teils herunter.
Als Referenz,
PDF durchsuchen mit (Cache deaktivieren):
Aber wenn dieselbe PDF-Datei in der Mitte angehalten und dann erneut geladen wird, wird die gesamte PDF-Datei heruntergeladen als:
Wie kann ich PDF.JS dazu bringen, die PDF-Datei Stück für Stück herunterzuladen, selbst wenn ich die Seite mehrmals aktualisiere?
Ist eine serverseitige Konfiguration erforderlich, um dieses Problem zu beheben? Es wäre hilfreich genug, wenn man die notwendigen Konfigurationen auf: SERVER oder CLIENT bereitstellen könnte, damit das PDF genauso geladen wird wie das von Mozilla gehostete PDF.JS (Jede Anfrage wird mit 206 Partial Content gestellt).
Ist eine serverseitige Konfiguration erforderlich, um dieses Problem zu beheben?
Ja, siehe https://developer.mozilla.org/en-US/docs/Web/HTTP/Caching_FAQ für eine Lösung. PDF.js verwendet das XHR des Browsers und hat keine direkte Kontrolle über das Caching von Anfragen. Schließen wie beantwortet.
Eine Möglichkeit, das clientseitige Caching zu deaktivieren, besteht darin, einen zufälligen oder zeitstempelbasierten Parameter am Ende der URL hinzuzufügen, z. B. viewer.html?file=some.pdf&_=someRandomNumberOrCurrentDatetime
. Dadurch wird der Cache des Browsers umgangen, da die URL immer anders ist.
Hilfreichster Kommentar
Eine Möglichkeit, das clientseitige Caching zu deaktivieren, besteht darin, einen zufälligen oder zeitstempelbasierten Parameter am Ende der URL hinzuzufügen, z. B.
viewer.html?file=some.pdf&_=someRandomNumberOrCurrentDatetime
. Dadurch wird der Cache des Browsers umgangen, da die URL immer anders ist.