Преглед изворни кода

Merge pull request #10376 from overleaf/jpa-pdf-caching-disable-first-error

[web] pdf-caching: disable pdf-caching after the first non-404 error

GitOrigin-RevId: f022e75acd9d5140ae02041b60af9819baa25e62
Jakob Ackermann пре 3 година
родитељ
комит
f803563673

+ 7 - 0
services/web/frontend/js/features/pdf-preview/util/pdf-caching-transport.js

@@ -111,6 +111,13 @@ export function generatePdfCachingTransportFactory(PDFJS) {
         .catch(err => {
           if (abortSignal.aborted) return
           if (isExpectedError(err)) {
+            if (is404(err)) {
+              // A regular pdf-js request would have seen this 404 as well.
+            } else {
+              // Flaky network, switch back to regular pdf-js requests.
+              metrics.failedCount++
+              metrics.failedOnce = true
+            }
             throw new PDFJS.MissingPDFException()
           }
           metrics.failedCount++