add:前端判断文件大小

add:自定义删除过期文件间隔,修复因间隔过短导致还没下载文件就没了
This commit is contained in:
lan
2022-12-15 16:34:18 +08:00
parent 40a966a375
commit 9cff54933b
6 changed files with 21 additions and 7 deletions
+3 -2
View File
@@ -39,7 +39,8 @@ async def startup():
index_html = open('templates/index.html', 'r', encoding='utf-8').read() \
.replace('{{title}}', settings.TITLE) \
.replace('{{description}}', settings.DESCRIPTION) \
.replace('{{keywords}}', settings.KEYWORDS)
.replace('{{keywords}}', settings.KEYWORDS) \
.replace("'{{fileSizeLimit}}'", str(settings.FILE_SIZE_LIMIT))
# 管理页面
admin_html = open('templates/admin.html', 'r', encoding='utf-8').read() \
.replace('{{title}}', settings.TITLE) \
@@ -116,7 +117,7 @@ async def index(code: str, ip: str = Depends(error_ip_limit), s: AsyncSession =
if info.type != 'text':
info.text = f'/select?code={code}'
return {
'detail': '取件成功,请点击""查看',
'detail': f'取件成功,文件将在{settings.DELETE_EXPIRE_FILES_INTERVAL}分钟后删除',
'data': {'type': info.type, 'text': info.text, 'name': info.name, 'code': info.code}
}
+2 -2
View File
@@ -104,8 +104,6 @@ DATABASE_URL=sqlite+aiosqlite:///database.db
DATA_ROOT=./static
# 静态文件夹URL
STATIC_URL=/static
# 是否开启上传
ENABLE_UPLOAD=true
# 错误次数
ERROR_COUNT=5
# 错误限制分钟数
@@ -114,6 +112,8 @@ ERROR_MINUTE=10
UPLOAD_COUNT=60
# 上传限制分钟数
UPLOAD_MINUTE=1
# 删除过期文件的间隔(秒)
DELETE_EXPIRE_FILES_INTERVAL=60
# 管理地址
ADMIN_ADDRESS=admin
# 管理密码
+2 -2
View File
@@ -113,8 +113,6 @@ DATABASE_URL=sqlite+aiosqlite:///database.db
DATA_ROOT=./static
# 静态文件夹URL
STATIC_URL=/static
# 是否开启上传
ENABLE_UPLOAD=true
# 错误次数
ERROR_COUNT=5
# 错误限制分钟数
@@ -123,6 +121,8 @@ ERROR_MINUTE=10
UPLOAD_COUNT=60
# 上传限制分钟数
UPLOAD_MINUTE=1
# 删除过期文件的间隔(秒)
DELETE_EXPIRE_FILES_INTERVAL=60
# 管理地址
ADMIN_ADDRESS=admin
# 管理密码
+2
View File
@@ -27,6 +27,8 @@ ERROR_MINUTE = config('ERROR_MINUTE', cast=int, default=10)
UPLOAD_COUNT = config('UPLOAD_COUNT', cast=int, default=60)
# 上传限制分钟数
UPLOAD_MINUTE = config('UPLOAD_MINUTE', cast=int, default=1)
# 删除过期文件的间隔(秒)
DELETE_EXPIRE_FILES_INTERVAL = config('DELETE_EXPIRE_FILES_INTERVAL', cast=int, default=10)
# 管理地址
ADMIN_ADDRESS = config('ADMIN_ADDRESS', cast=str, default="admin")
# 管理密码
+11
View File
@@ -102,6 +102,7 @@
multiple
style="margin: 1rem 0;"
:data="uploadData"
:before-upload="beforeUpload"
:headers="{'pwd':pwd}"
:on-success="successUpload"
:on-error="errorUpload"
@@ -195,6 +196,7 @@
files: [],
pageNum: 0,
inputDisable: false,
fileSizeLimit: '{{fileSizeLimit}}',
pwd: localStorage.getItem('pwd') || '',
uploadData: {
style: '2',
@@ -322,6 +324,15 @@
type: 'error'
});
},
beforeUpload: function (file) {
if (file.size > this.fileSizeLimit) {
this.$message({
message: `文件大小不能超过${this.fileSizeLimit/1024/1024}MB`,
type: 'error'
});
return false
}
}
}
})
</script>
+1 -1
View File
@@ -33,7 +33,7 @@ async def delete_expire_files():
query = delete(Codes).where(Codes.id.in_(exps_ids))
await s.execute(query)
await s.commit()
await asyncio.sleep(random.randint(2, 2))
await asyncio.sleep(settings.DELETE_EXPIRE_FILES_INTERVAL)
async def get_code(s: AsyncSession):