mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-27 11:01:56 +02:00
[clsi-cache] base64 encode X-All-Files header if needed (#25579)
* [clsi-cache] base64 encode X-All-Files header if needed * [clsi-cache] add explicit error check Co-authored-by: Brian Gough <brian.gough@overleaf.com> --------- Co-authored-by: Brian Gough <brian.gough@overleaf.com> GitOrigin-RevId: bd3b6381b68398aac4a07e48cd69e6aa97e94f18
This commit is contained in:
@@ -145,6 +145,10 @@ async function getRedirectWithFallback(
|
||||
} = await fetchRedirectWithResponse(u, {
|
||||
signal,
|
||||
})
|
||||
let allFilesRaw = headers.get('X-All-Files')
|
||||
if (!allFilesRaw.startsWith('[')) {
|
||||
allFilesRaw = Buffer.from(allFilesRaw, 'base64url').toString()
|
||||
}
|
||||
// Success, return the cache entry.
|
||||
return {
|
||||
location,
|
||||
@@ -152,7 +156,7 @@ async function getRedirectWithFallback(
|
||||
shard: headers.get('X-Shard') || 'cache',
|
||||
lastModified: new Date(headers.get('X-Last-Modified')),
|
||||
size: parseInt(headers.get('X-Content-Length'), 10),
|
||||
allFiles: JSON.parse(headers.get('X-All-Files')),
|
||||
allFiles: JSON.parse(allFilesRaw),
|
||||
}
|
||||
} catch (err) {
|
||||
if (err instanceof RequestFailedError && err.response.status === 404) {
|
||||
|
||||
Reference in New Issue
Block a user