def File(file, params={}): # 参数 param = Util.ArrayMerge( { 'path': 'upload/', #上传目录 'filename': '', #文件名 'bind': [ 'svg', 'jpg', 'jpeg', 'png', 'gif', 'mov', 'mp4', 'wav', 'mp3' ], #允许格式 }, params) # 限制格式 ext = FileEo.GetExt(file.filename) if param['bind']: if ext not in param['bind']: print('只支持%s格式!' % (','.join(param['bind']))) return '' # 是否重命名 param['filename'] = file.filename if not param[ 'filename'] else param['filename'] + '.' + ext # 创建目录 FileEo.Root = Env.root_dir if not FileEo.Mkdir(param['path']): print('[Upload] Mkdir:', '创建目录失败!') return '' # 保存文件 if not FileEo.Upload(file, param['path'] + param['filename']): print('[Upload] Upload:', '保存文件失败!') return '' return param['filename']
def Base64(params={}): # 参数 param = Util.ArrayMerge( { 'path': 'upload/', #上传目录 'base64': '', #文件内容 'filename': '', #文件名 'ext': 'png', #后缀 }, params) # 内容 base64 = param['base64'] # 否有类型 ct = Util.Explode(',', param['base64']) if len(ct) > 1: param['ext'] = Base64.GetExt(ct[0]) base64 = ct[1] # 创建目录 FileEo.Root = Env.root_dir if not FileEo.Mkdir(param['path']): print('[Upload] Mkdir:', '创建目录失败!') return '' # 文件名 filename = Upload.GetFileName( ) + '.' + param['ext'] if not param['filename'] else param['filename'] if not FileEo.Writer(param['path'] + filename, Base64.Decode(base64)): print('[Upload] Writer:', '保存文件失败!') return '' return filename
def PostJson(url: str, data: dict, header: dict = {}): # 请求头 param = Util.ArrayMerge( { 'Content-Type': 'application/json; charset=utf-8', #JSON方式 }, header) # 数据 json = Util.JsonEncode(data) if len(data) > 0 else '{}' # 发送 res = requests.post(url, data=json, headers=param).text return Util.JsonDecode(res) if len(res) > 0 else None