Files
directus/api/src/utils/should-skip-cache.ts
Rijk van Zanten 1a5f06c791 TSConfig Modernization: Set importsNotUsedAsValues (#17887)
* Set importsNotUsedAsValues

* Fix import
2023-03-22 14:51:27 -04:00

22 lines
613 B
TypeScript

import type { Request } from 'express';
import { getEnv } from '../env';
import { Url } from './url';
/**
* Whether to skip caching for the current request
*
* @param req Express request object
*/
export function shouldSkipCache(req: Request): boolean {
const env = getEnv();
// Always skip cache for requests coming from the data studio based on Referer header
const adminUrl = new Url(env.PUBLIC_URL).addPath('admin').toString();
if (req.get('Referer')?.startsWith(adminUrl)) return true;
if (env.CACHE_SKIP_ALLOWED && req.get('cache-control')?.includes('no-store')) return true;
return false;
}