1
0
Fork 0
mirror of synced 2024-07-03 05:20:32 +12:00

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, application,
screens, screens,
layouts, 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, title: appInfo.name,
production: env.isProd(), production: env.isProd(),
appId, appId,
clientLibPath: clientLibraryPath(appId), clientLibPath: clientLibraryPath(appId, appInfo.version),
}) })
const appHbs = loadHandlebarsFile(`${__dirname}/templates/app.hbs`) 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 * @return {string} The URL to be inserted into appPackage response or server rendered
* app index file. * app index file.
*/ */
exports.clientLibraryPath = appId => { exports.clientLibraryPath = (appId, version) => {
if (env.isProd()) { if (env.isProd()) {
return `${exports.objectStoreUrl()}/${sanitizeKey( let url = `${exports.objectStoreUrl()}/${sanitizeKey(
appId appId
)}/budibase-client.js` )}/budibase-client.js`
// append app version to bust the cache
if (version) {
url += `?v=${version}`
}
return url
} else { } else {
return `/api/assets/client` return `/api/assets/client`
} }