Skip to content

Commit 9bd72c8

Browse files
committed
fix(media): add cache control on media and fix tests after rebase
1 parent af21ec0 commit 9bd72c8

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

src/media/image/imagemedia.controller.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ export class ImageMediaController {
3030
if (!media.isPublic && !user) throw new AppException(ERROR_CODE.NOT_LOGGED_IN);
3131
const stream = this.imageMediaService.readMediaFromDisk(mediaId);
3232
response.setHeader('Content-Type', 'image/webp');
33+
response.setHeader('Cache-Control', `${media.isPublic ? 'public' : 'private'}, max-age=31536000, immutable`); // 1 year
3334
stream.pipe(response);
3435
stream.on('error', () => {
3536
stream.close();

test/e2e/media/image/upload-media.e2e-spec.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,19 @@
1+
import { ImageMediaPreset } from '@prisma/client';
12
import { mkdirSync, rmSync } from 'fs';
23
import { ERROR_CODE } from '../../../../src/exceptions';
34
import { createUser } from '../../../utils/fakedb';
45
import { e2eSuite, JsonLike } from '../../../utils/test_utils';
56
import { ConfigModule } from '../../../../src/config/config.module';
7+
import { PermissionManager } from '../../../../src/utils';
68
import * as pactum from 'pactum';
79

810
export const UploadMediaE2ESpec = e2eSuite('POST /media/image', (app) => {
9-
const user = createUser(app, { permissions: ['API_UPLOAD_MEDIA'] });
11+
const user = createUser(app, { permissions: new PermissionManager().with('API_UPLOAD_MEDIA') });
1012
const unauthorizedUser = createUser(app);
1113

1214
const params = {
1315
public: true,
14-
preset: 'AVATAR',
16+
preset: ImageMediaPreset.AVATAR,
1517
rotation: 1,
1618
effort: 2,
1719
quality: 100,

0 commit comments

Comments
 (0)