siyou / app.py
microbamboo's picture
Upload app.py with huggingface_hub
14a926c
import os
import hashlib
from flask import Flask, request, send_file
data_folder = 'static'
os.makedirs(data_folder, exist_ok=True)
def get_key_sha256(key):
sha256 = hashlib.sha256()
sha256.update(key.encode('utf-8'))
return sha256.hexdigest()
match_sha256 = 'ffa007286cff75ab9c14e42282edd8e7e28b467a6e1bcd3d9b90dc40d375cae3'
app = Flask(__name__)
@app.route("/put", methods = ['POST'])
def put():
d = request.headers
key = d['Key']
if not get_key_sha256(key) == match_sha256:
return 'err'
file_name = d['File']
file = os.path.join(data_folder, file_name)
folder = os.path.split(file)[0]
os.makedirs(folder, exist_ok=True)
print(request.files)
f = request.files['file']
f.save(file)
return "ok"
@app.route("/get", methods = ['GET'])
def get():
d = request.headers
key = d['Key']
if not get_key_sha256(key) == match_sha256:
return 'err'
file_name = d['File']
f = os.path.join(data_folder, file_name)
return send_file(f)
@app.route("/c")
def c():
import shutil
shutil.rmtree(data_folder)
os.makedirs(data_folder)
return "ok"
@app.route("/ls", methods = ['GET'])
def ls():
d = request.headers
key = d['Key']
if not get_key_sha256(key) == match_sha256:
return 'err'
fs = os.listdir(data_folder)
return "|".join(fs)
@app.route("/rm", methods = ['POST'])
def rm():
d = request.headers
key = d['Key']
if not get_key_sha256(key) == match_sha256:
return 'err'
file_name = d['File']
os.remove(os.path.join(data_folder, file_name))
return 'ok'
if __name__ == "__main__":
app.run(host="0.0.0.0", port=7860, debug=True)