I'd like to display PDFs in a Webapp served by Fastapi. The files are fetched in Javascript. Simplyfied code:
fetch('/files/', {method: "POST", body: JSON.stringify(myFilePathString),cache: "no-cache"})
.then(function(response) { return response.blob(); })
.then(function(blob) { myDomElement.src = URL.createObjectURL(blob); });
Problem: The browser always reloads the files and never uses cached files. With 'cache: "no-cache"' I would expect the browser to verify if the recently loaded file is up to date and take that one. The ETag in the header stays unchanged when reloading the file. Obviously, the created URL from the BLOB changes on every reload. On my understanding, this could be the reason. Is there a way to use the browser cache with this mechanism anyhow?