From 073aff59be4bb70659330c44e40d5e34be83495a Mon Sep 17 00:00:00 2001 From: lan-air Date: Sat, 10 Dec 2022 21:11:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=8F=96=E4=BB=B6=E7=A0=81?= =?UTF-8?q?=E8=BF=87=E6=9C=9F=E6=9D=A1=E4=BB=B6=EF=BC=8C=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E5=A4=A7=E5=B0=8F=E9=99=90=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- images/img_3.png | Bin 45176 -> 79825 bytes main.py | 174 +++++++++++++++++++++++++++---------------- readme.md | 9 ++- templates/admin.html | 27 +++++-- templates/index.html | 79 +++++++++++++++----- 5 files changed, 199 insertions(+), 90 deletions(-) diff --git a/images/img_3.png b/images/img_3.png index c9c6a8ab01cd91a1dbbca88cc2ff4fe07bdb5cf9..b14a1dfed3332158662e6c4434b1c25b6ebee82d 100644 GIT binary patch literal 79825 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

58M6L-pY%;>cmz3u!Xu`HvY<0VBo= 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 F_Jyo<}Fk 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 literal 45176 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 diff --git a/main.py b/main.py index d4c6688..0921a1b 100644 --- a/main.py +++ b/main.py @@ -18,24 +18,43 @@ app = FastAPI() if not os.path.exists('./static'): os.makedirs('./static') app.mount("/static", StaticFiles(directory="static"), name="static") -index_html = open('templates/index.html', 'r', encoding='utf-8').read() -admin_html = open('templates/admin.html', 'r', encoding='utf-8').read() -# 过期时间 -exp_hour = 24 + +############################################ +# 需要修改的参数 # 允许错误次数 error_count = 5 # 禁止分钟数 -error_minute = 60 +error_minute = 10 # 后台地址 admin_address = 'admin' # 管理密码 admin_password = 'admin' +# 文件大小限制 10M +file_size_limit = 1024 * 1024 * 10 +# 系统标题 +title = '口令传送箱' +# 系统描述 +description = 'FileCodeBox,口令传送箱,匿名口令分享文本,文件,图片,视频,音频,压缩包等文件' +# 系统关键字 +keywords = 'FileCodeBox,口令传送箱,匿名口令分享文本,文件,图片,视频,音频,压缩包等文件' +############################################ + +index_html = open('templates/index.html', 'r', encoding='utf-8').read() \ + .replace('{{title}}', title) \ + .replace('{{description}}', description) \ + .replace('{{keywords}}', keywords) +admin_html = open('templates/admin.html', 'r', encoding='utf-8').read() \ + .replace('{{title}}', title) \ + .replace('{{description}}', description) \ + .replace('{{keywords}}', keywords) + error_ip_count = {} def delete_file(files): for file in files: - os.remove('.' + file) + if file['type'] != 'text': + os.remove('.' + file['text']) def get_db(): @@ -55,14 +74,17 @@ def get_code(db: Session = Depends(get_db)): def get_file_name(key, ext, file): now = datetime.datetime.now() + file_bytes = file.file.read() + size = len(file_bytes) + if size > file_size_limit: + return size, '', '', '' path = f'./static/upload/{now.year}/{now.month}/{now.day}/' name = f'{key}.{ext}' if not os.path.exists(path): os.makedirs(path) - file = file.file.read() with open(f'{os.path.join(path, name)}', 'wb') as f: - f.write(file) - return key, len(file), path[1:] + name + f.write(file_bytes) + return size, path[1:] + name, file.content_type, file.filename @app.get(f'/{admin_address}') @@ -76,20 +98,19 @@ async def admin_post(request: Request, db: Session = Depends(get_db)): codes = db.query(database.Codes).all() return {'code': 200, 'msg': '查询成功', 'data': codes} else: - return {'code': 400, 'msg': '密码错误'} + return {'code': 404, 'msg': '密码错误'} @app.delete(f'/{admin_address}') async def admin_delete(request: Request, code: str, db: Session = Depends(get_db)): if request.headers.get('pwd') == admin_password: - file = db.query(database.Codes).filter(database.Codes.code == code) - if file.first().type != 'text/plain': - threading.Thread(target=delete_file, args=([file.first().text],)).start() - file.delete() + file = db.query(database.Codes).filter(database.Codes.code == code).first() + threading.Thread(target=delete_file, args=([{'type': file.type, 'text': file.text}],)).start() + db.delete(file) db.commit() return {'code': 200, 'msg': '删除成功'} else: - return {'code': 400, 'msg': '密码错误'} + return {'code': 404, 'msg': '密码错误'} @app.get('/') @@ -97,60 +118,87 @@ async def index(): return HTMLResponse(index_html) +def check_ip(ip): + # 检查ip是否被禁止 + if ip in error_ip_count: + if error_ip_count[ip]['count'] >= error_count: + if error_ip_count[ip]['time'] + datetime.timedelta(minutes=error_minute) > datetime.datetime.now(): + return False + else: + error_ip_count.pop(ip) + return True + + +def ip_error(ip): + ip_info = error_ip_count.get(ip, {'count': 0, 'time': datetime.datetime.now()}) + ip_info['count'] += 1 + error_ip_count[ip] = ip_info + return ip_info['count'] + + @app.post('/') async def index(request: Request, code: str, db: Session = Depends(get_db)): + ip = request.client.host + if not check_ip(ip): + return {'code': 404, 'msg': '错误次数过多,请稍后再试'} info = db.query(database.Codes).filter(database.Codes.code == code).first() - error = error_ip_count.get(request.client.host, {'count': 0, 'time': datetime.datetime.now()}) - if error['count'] > error_count: - if datetime.datetime.now() - error['time'] < datetime.timedelta(minutes=error_minute): - return {'code': 404, 'msg': '请求过于频繁,请稍后再试'} - else: - error['count'] = 0 - else: - if not info: - error['count'] += 1 - error_ip_count[request.client.host] = error - return {'code': 404, 'msg': f'取件码错误,错误5次将被禁止10分钟'} - else: - return {'code': 200, 'msg': '取件成功,请点击“取”查看', 'data': info} + if not info: + return {'code': 404, 'msg': f'取件码错误,错误{error_count - ip_error(ip)}次将被禁止10分钟'} + if info.exp_time < datetime.datetime.now(): + threading.Thread(target=delete_file, args=([{'type': info.type, 'text': info.text}],)).start() + db.delete(info) + db.commit() + return {'code': 404, 'msg': '取件码已过期,请联系寄件人'} + info.count -= 1 + if info.count == 0: + threading.Thread(target=delete_file, args=([{'type': info.type, 'text': info.text}],)).start() + db.delete(info) + db.commit() + return {'code': 200, 'msg': '取件成功,请点击"取"查看', 'data': info} @app.post('/share') -async def share(text: str = Form(default=None), file: UploadFile = File(default=None), db: Session = Depends(get_db)): - cutoff_time = datetime.datetime.now() - datetime.timedelta(hours=exp_hour) - olds = db.query(database.Codes).filter(database.Codes.use_time < cutoff_time) - threading.Thread(target=delete_file, args=([old.text for old in olds if old.type != 'text/plain'],)).start() - olds.delete() +async def share(text: str = Form(default=None), style: str = Form(default='2'), value: int = Form(default=1), + file: UploadFile = File(default=None), db: Session = Depends(get_db)): + exps = db.query(database.Codes).filter(database.Codes.exp_time < datetime.datetime.now()) + threading.Thread(target=delete_file, args=([[{'type': old.type, 'text': old.text}] for old in exps.all()],)).start() + exps.delete() db.commit() code = get_code(db) - if text: - info = database.Codes( - code=code, - text=text, - type='text/plain', - key=uuid.uuid4().hex, - size=len(text), - used=True, - name='分享文本' - ) - db.add(info) - db.commit() - return {'code': 200, 'msg': '上传成功,请点击文件库查看', - 'data': {'code': code, 'name': '分享文本', 'text': text}} - elif file: - key, size, full_path = get_file_name(uuid.uuid4().hex, file.filename.split('.')[-1], file) - info = database.Codes( - code=code, - text=full_path, - type=file.content_type, - key=key, - size=size, - used=True, - name=file.filename - ) - db.add(info) - db.commit() - return {'code': 200, 'msg': '上传成功,请点击文件库查看', - 'data': {'code': code, 'name': file.filename, 'text': full_path}} + if style == '2': + if value > 7: + return {'code': 404, 'msg': '最大有效天数为7天'} + exp_time = datetime.datetime.now() + datetime.timedelta(days=value) + exp_count = -1 + elif style == '1': + if value < 1: + return {'code': 404, 'msg': '最小有效次数为1次'} + exp_time = datetime.datetime.now() + datetime.timedelta(days=1) + exp_count = value else: - return {'code': 422, 'msg': '参数错误', 'data': []} + exp_time = datetime.datetime.now() + datetime.timedelta(days=1) + exp_count = -1 + key = uuid.uuid4().hex + if file: + size, _text, _type, name = get_file_name(key, file.filename.split('.')[-1], file) + if size > file_size_limit: + return {'code': 404, 'msg': '文件过大'} + else: + size, _text, _type, name = len(text), text, 'text', '文本分享' + info = database.Codes( + code=code, + text=_text, + size=size, + type=_type, + name=name, + count=exp_count, + exp_time=exp_time, + key=key + ) + db.add(info) + db.commit() + return { + 'code': 200, + 'msg': '分享成功,请点击文件箱查看取件码', + 'data': {'code': code, 'key': key, 'name': name, 'text': _text} + } diff --git a/readme.md b/readme.md index 768565b..72e0c0e 100644 --- a/readme.md +++ b/readme.md @@ -17,7 +17,7 @@ - [x] Sqlite3数据库:无需安装数据库 - [x] 可以加get参数code,这样打开就会读取取件码如:http://xxx.com?code=12345 - [x] 管理面板:简单列表页删除违规文件 -- [ ] 口令使用次数,口令有效期,二维码分享 +- [x] 口令使用次数,口令有效期,二维码分享 ## 更新记录 @@ -26,6 +26,13 @@ 1. 管理面板已新增,一如既往的极简,只有删除 2. 二维码图片(调用的网络接口,如果离线环境将无法使用,一切为了极简) +### 2022年12月10日 21:10:00 + +1. 取件码有效期,取件码使用次数 +2. 优化代码逻辑 +3. 限制上传文件大小 +4. 完善配置参数 + ## 系统截图 ### 取件 diff --git a/templates/admin.html b/templates/admin.html index f98941a..7c885bb 100644 --- a/templates/admin.html +++ b/templates/admin.html @@ -6,13 +6,19 @@ content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> - 后台管理-口令传送箱 + 后台管理-{{title}} + + + +

- -   - + + +   + + @@ -21,6 +27,8 @@
取件码:${ file.code }
文件名:${ file.name }
+
次   数:${ file.count }
+
到   期:${ file.exp_time.slice(0,19) }
内   容:${ file.text }
@@ -39,7 +47,7 @@ -   +  
@@ -60,7 +68,12 @@ return { login: false, pwd: '', - files: [] + files: [], + config: { + error_count: 0, + file_size: 0, + admin_pwd: 'admin' + } }; }, mounted: function () { @@ -97,7 +110,7 @@ }); } }) - } + }, } }) diff --git a/templates/index.html b/templates/index.html index 869b569..740c793 100644 --- a/templates/index.html +++ b/templates/index.html @@ -6,8 +6,11 @@ content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> - - 口令传送箱 + {{title}} + + + +