diff --git a/server/api/files/preview.ts b/server/api/files/preview.ts index 4d7f68c..1b7d8c5 100644 --- a/server/api/files/preview.ts +++ b/server/api/files/preview.ts @@ -37,6 +37,12 @@ export default defineEventHandler(async (event) => { // Generate presigned URL for preview const url = await getPreviewUrl(fileName, contentType); + console.log('Preview URL generated:', { + fileName, + contentType, + url: url.substring(0, 100) + '...' // Log first 100 chars for security + }); + return { success: true, url, diff --git a/server/utils/minio.ts b/server/utils/minio.ts index 2b7c9d8..fdf1dda 100644 --- a/server/utils/minio.ts +++ b/server/utils/minio.ts @@ -26,16 +26,17 @@ export const listFiles = async (prefix: string = '', recursive: boolean = false) try { const stream = client.listObjectsV2(bucketName, prefix, recursive); - console.log(`Starting listObjectsV2 with prefix: "${prefix}", recursive: ${recursive}`); - stream.on('data', (obj) => { - // Skip objects without a name - if (!obj || typeof obj.name !== 'string') { - console.log('Skipping invalid object:', obj); + // Handle folder prefixes returned by MinIO + if (obj && obj.prefix) { + folders.add(obj.prefix); return; } - console.log(`Object received: "${obj.name}", size: ${obj.size}, etag: ${obj.etag}`); + // Skip objects without a name + if (!obj || typeof obj.name !== 'string') { + return; + } if (!recursive) { if (prefix) {