bugfix
This commit is contained in:
parent
32add5ddb4
commit
a2dfc23666
@ -8,7 +8,7 @@ import aiofiles
|
||||
import json
|
||||
import time
|
||||
import base64
|
||||
|
||||
from urllib.parse import quote
|
||||
from appPublic.worker import get_event_loop
|
||||
from appPublic.folderUtils import _mkdir
|
||||
from appPublic.base64_to_file import base64_to_file, getFilenameFromBase64
|
||||
@ -212,6 +212,10 @@ async def downloadfile2url(request, url, headers=None, params=None, data={}, met
|
||||
url = env.entire_url('/idfile?path=') + env.quote(webpath)
|
||||
return url
|
||||
|
||||
def get_baseurl():
|
||||
baseurl = os.environ.get('BASEURL')
|
||||
return baseurl
|
||||
|
||||
async def base642file(b64str):
|
||||
filename = getFilenameFromBase64(b64str)
|
||||
if ',' in b64str:
|
||||
@ -223,4 +227,24 @@ async def base642file(b64str):
|
||||
await f.write(binary_data)
|
||||
return fpath
|
||||
|
||||
async def b64media2url(request, mediafile):
|
||||
# env = request._run_ns
|
||||
# entire_url = env.entire_url
|
||||
if mediafile.startswith('http://') or mediafile.startswith('https://'):
|
||||
return mediafile
|
||||
webpath = mediafile
|
||||
if mediafile.startswith('data:'):
|
||||
fpath = await base642file(mediafile)
|
||||
webpath = FileStorage().webpath(fpath)
|
||||
elif len(mediafile) > 8000:
|
||||
e = Exception(f'mediafile is not a media file')
|
||||
exception(f'{e}')
|
||||
return ''
|
||||
if request:
|
||||
url = entire_url('/idfile?path=') + quote(webpath)
|
||||
return url
|
||||
baseurl = get_baseurl()
|
||||
if baseurl:
|
||||
return f'{baseurl}/idfile?path={quote(mediafile)}'
|
||||
return f'/idfile?path={quote(mediafile)}'
|
||||
|
||||
|
||||
@ -37,6 +37,7 @@ import datetime
|
||||
from openpyxl import Workbook
|
||||
from tempfile import mktemp
|
||||
|
||||
from base64_to_file import hex2base64
|
||||
from appPublic.jsonConfig import getConfig
|
||||
from appPublic.dictObject import DictObject
|
||||
from appPublic.Singleton import GlobalEnv
|
||||
@ -77,7 +78,7 @@ from .error import (
|
||||
|
||||
from .filetest import current_fileno
|
||||
from .filedownload import path_download, file_download, file_response
|
||||
from .filestorage import FileStorage, downloadfile2url
|
||||
from .filestorage import FileStorage, downloadfile2url, get_baseurl, b64media2url
|
||||
from .serverenv import ServerEnv
|
||||
|
||||
def server_error(errcode):
|
||||
@ -105,10 +106,6 @@ def basic_auth_headers(user, passwd):
|
||||
"Authorization":ba.encode()
|
||||
}
|
||||
|
||||
def get_baseurl():
|
||||
baseurl = os.environ.get('BASEURL')
|
||||
return baseurl
|
||||
|
||||
async def stream_response(request, async_data_generator, content_type='text/html'):
|
||||
res = StreamResponse()
|
||||
if content_type:
|
||||
@ -335,6 +332,8 @@ def initEnv():
|
||||
g.return_error = return_error
|
||||
g.openai_401 = openai_401
|
||||
g.get_baseurl = get_baseurl
|
||||
g.hex2base64 = hex2base64
|
||||
g.b64media2url = b64media2url
|
||||
g.openai_403 = openai_403
|
||||
g.openai_400 = openai_400
|
||||
g.openai_429 = openai_429
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user