|
|
@@ -148,6 +148,52 @@ class UtilsController extends Controller {
|
|
|
|
|
|
}
|
|
|
|
|
|
+ readFileImageForPath(filePath){
|
|
|
+
|
|
|
+ const getMimeType = (fileName)=>{
|
|
|
+ const extension = path.extname(fileName).toLowerCase().replace('.', '');
|
|
|
+ let mimeType = '';
|
|
|
+ switch (extension) {
|
|
|
+ case 'jpg':
|
|
|
+ case 'jpeg':
|
|
|
+ mimeType = 'image/jpeg';
|
|
|
+ break;
|
|
|
+ case 'png':
|
|
|
+ mimeType = 'image/png';
|
|
|
+ break;
|
|
|
+ case 'gif':
|
|
|
+ mimeType = 'image/gif';
|
|
|
+ break;
|
|
|
+ case 'webp':
|
|
|
+ mimeType = 'image/webp';
|
|
|
+ break;
|
|
|
+ case 'avif':
|
|
|
+ mimeType = 'image/avif';
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ mimeType = 'application/octet-stream';
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ return mimeType;
|
|
|
+ }
|
|
|
+
|
|
|
+ const fileBuffer = fs.readFileSync(filePath);
|
|
|
+
|
|
|
+
|
|
|
+ const fileName = path.basename(filePath);
|
|
|
+ const mimeType = getMimeType(fileName); // 自定义获取 MIME 类型的方法
|
|
|
+ return {
|
|
|
+ fileBuffer:fileBuffer,
|
|
|
+ fileName:fileName,
|
|
|
+ mimeType:mimeType,
|
|
|
+ };
|
|
|
+
|
|
|
+
|
|
|
+ return new File([fileBuffer], fileName, { type: mimeType });
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
}
|
|
|
|