bugfix
This commit is contained in:
parent
20eb5fe63c
commit
d8cb3c8c49
@ -2,12 +2,12 @@ import os
|
|||||||
import base64
|
import base64
|
||||||
from appPuyblic.uniqueID import getID
|
from appPuyblic.uniqueID import getID
|
||||||
|
|
||||||
function getFileExtensionFromBase64(base64String) {
|
function getFilenameFromBase64(base64String) {
|
||||||
// Extract MIME type from data URL
|
// Extract MIME type from data URL
|
||||||
const mimeType = base64String.match(/data:([a-zA-Z0-9]+\/[a-zA-Z0-9-.+]+).*,.*/);
|
const mimeType = base64String.match(/data:([a-zA-Z0-9]+\/[a-zA-Z0-9-.+]+).*,.*/)
|
||||||
|
ext = ''
|
||||||
if (mimeType && mimeType[1]) {
|
if (mimeType && mimeType[1]) {
|
||||||
const mime = mimeType[1];
|
const mime = mimeType[1]
|
||||||
const mimeToExtension = {
|
const mimeToExtension = {
|
||||||
# 图片
|
# 图片
|
||||||
"image/jpeg": "jpg",
|
"image/jpeg": "jpg",
|
||||||
@ -38,13 +38,15 @@ function getFileExtensionFromBase64(base64String) {
|
|||||||
"video/x-matroska": "mkv",
|
"video/x-matroska": "mkv",
|
||||||
"video/3gpp": "3gp",
|
"video/3gpp": "3gp",
|
||||||
"video/x-flv": "flv",
|
"video/x-flv": "flv",
|
||||||
};
|
|
||||||
|
|
||||||
return mimeToExtension.get(mime, '');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return '';
|
ext = mimeToExtension.get(mime, '')
|
||||||
|
}
|
||||||
|
name = getID()
|
||||||
|
fname = f'{name}{ext}'
|
||||||
|
return fname
|
||||||
}
|
}
|
||||||
|
|
||||||
def base64_to_file(base64_string, output_path):
|
def base64_to_file(base64_string, output_path):
|
||||||
# Remove data URL prefix if present (e.g., "data:image/png;base64,")
|
# Remove data URL prefix if present (e.g., "data:image/png;base64,")
|
||||||
if ',' in base64_string:
|
if ',' in base64_string:
|
||||||
@ -56,10 +58,5 @@ def base64_to_file(base64_string, output_path):
|
|||||||
binary_data = base64.b64decode(base64_data)
|
binary_data = base64.b64decode(base64_data)
|
||||||
|
|
||||||
# Write binary data to file
|
# Write binary data to file
|
||||||
name = getID()
|
with open(output_path, 'wb') as file:
|
||||||
ext = getFileExtensionFromBase64(base64_string)
|
|
||||||
fname = f'{name}{ext}'
|
|
||||||
fp = os.path.join(output_path, fname)
|
|
||||||
with open(fp, 'wb') as file:
|
|
||||||
file.write(binary_data)
|
file.write(binary_data)
|
||||||
return fp
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user