Merge pull request #3331 from Budibase/fix/browser-caching

bust cache when app versions are different
This commit is contained in:
Martin McKeaveney 2021-11-11 13:05:22 +01:00 committed by GitHub
commit c4fb7ff8ff
3 changed files with 9 additions and 4 deletions

View File

@ -197,7 +197,7 @@ exports.fetchAppPackage = async ctx => {
application,
screens,
layouts,
clientLibPath: clientLibraryPath(ctx.params.appId),
clientLibPath: clientLibraryPath(ctx.params.appId, application.version),
}
}

View File

@ -87,7 +87,7 @@ exports.serveApp = async function (ctx) {
title: appInfo.name,
production: env.isProd(),
appId,
clientLibPath: clientLibraryPath(appId),
clientLibPath: clientLibraryPath(appId, appInfo.version),
})
const appHbs = loadHandlebarsFile(`${__dirname}/templates/app.hbs`)

View File

@ -51,11 +51,16 @@ exports.objectStoreUrl = () => {
* @return {string} The URL to be inserted into appPackage response or server rendered
* app index file.
*/
exports.clientLibraryPath = appId => {
exports.clientLibraryPath = (appId, version) => {
if (env.isProd()) {
return `${exports.objectStoreUrl()}/${sanitizeKey(
let url = `${exports.objectStoreUrl()}/${sanitizeKey(
appId
)}/budibase-client.js`
// append app version to bust the cache
if (version) {
url += `?v=${version}`
}
return url
} else {
return `/api/assets/client`
}