r2 modify
This commit is contained in:
@@ -0,0 +1,25 @@
|
|||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: Middleware
|
||||||
|
metadata:
|
||||||
|
name: lms-api-strip
|
||||||
|
spec:
|
||||||
|
stripPrefix:
|
||||||
|
prefixes:
|
||||||
|
- /lms-api
|
||||||
|
---
|
||||||
|
apiVersion: traefik.io/v1alpha1
|
||||||
|
kind: IngressRoute
|
||||||
|
metadata:
|
||||||
|
name: lms-api
|
||||||
|
spec:
|
||||||
|
entryPoints:
|
||||||
|
- web
|
||||||
|
routes:
|
||||||
|
- match: Host(`workspace.autonomystudio.net`) && PathPrefix(`/lms-api`)
|
||||||
|
kind: Rule
|
||||||
|
middlewares:
|
||||||
|
- name: lms-api-strip
|
||||||
|
services:
|
||||||
|
- name: lms-be
|
||||||
|
port: 4400
|
||||||
|
|
||||||
@@ -1551,7 +1551,6 @@ export class InstructorService {
|
|||||||
key: storedFileName,
|
key: storedFileName,
|
||||||
body: file.buffer,
|
body: file.buffer,
|
||||||
contentType: file.mimetype,
|
contentType: file.mimetype,
|
||||||
fileName: originalFileName,
|
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
await mkdir(COURSE_REFERENCE_UPLOAD_ROOT, { recursive: true });
|
await mkdir(COURSE_REFERENCE_UPLOAD_ROOT, { recursive: true });
|
||||||
|
|||||||
@@ -6,7 +6,6 @@ type UploadPublicFileInput = {
|
|||||||
key: string;
|
key: string;
|
||||||
body: Buffer;
|
body: Buffer;
|
||||||
contentType?: string | null;
|
contentType?: string | null;
|
||||||
fileName?: string | null;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
@@ -53,7 +52,6 @@ export class R2PublicFileService {
|
|||||||
Body: input.body,
|
Body: input.body,
|
||||||
ContentLength: input.body.length,
|
ContentLength: input.body.length,
|
||||||
ContentType: input.contentType ?? 'application/octet-stream',
|
ContentType: input.contentType ?? 'application/octet-stream',
|
||||||
ContentDisposition: input.fileName ? contentDispositionForFile(input.fileName) : undefined,
|
|
||||||
}));
|
}));
|
||||||
|
|
||||||
return this.publicUrl(input.key);
|
return this.publicUrl(input.key);
|
||||||
@@ -120,8 +118,3 @@ export class R2PublicFileService {
|
|||||||
function encodeObjectKey(key: string) {
|
function encodeObjectKey(key: string) {
|
||||||
return key.split('/').map(encodeURIComponent).join('/');
|
return key.split('/').map(encodeURIComponent).join('/');
|
||||||
}
|
}
|
||||||
|
|
||||||
function contentDispositionForFile(fileName: string) {
|
|
||||||
const fallbackName = fileName.replace(/[\\\"\r\n]/g, '_');
|
|
||||||
return `attachment; filename="${fallbackName}"; filename*=UTF-8''${encodeURIComponent(fileName)}`;
|
|
||||||
}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user