diff --git a/assets/templates/footer.tmpl b/assets/templates/footer.tmpl
index c788372..f94b6bc 100644
--- a/assets/templates/footer.tmpl
+++ b/assets/templates/footer.tmpl
@@ -24,9 +24,7 @@ const uploadFile = (file) => {
const handleSuccess = (url) => console.log(`${file_name}: ${serverUrl}${url}`);
const handleFailure = (error) => {
- // 恢复上传按钮状态
- $uploadButton.disabled = false;
- $uploadButton.textContent = "点击上传";
+ recoverUploadButton();
console.error('上传失败! ', error);
return Promise.reject("上传失败! ", error);
@@ -48,13 +46,13 @@ const uploadFile = (file) => {
if (start < file.size) {
// 获取当前文件块
const chunk = file.slice(start, end);
-
+
// 调用 handleFileUpload 函数上传文件块,并返回一个Promise
return handleFileUpload(chunk, 0, file_name, RetryMessage).then(
(url) => {
// 上传成功时,更新临时变量 temp
temp += `\n${url.substring(14)}`; // "/api/download/".length 为14
-
+
// 更新文件块起始和结束位置
start = end;
end = Math.min(start + SizeThreshold, file.size);
@@ -68,15 +66,15 @@ const uploadFile = (file) => {
// 如果还未达到最大重试次数,设置重试消息并进行重试
RetryMessage = `${file_name}上传块失败,${retryDelay / 1000}秒后重试 (${retries + 1}/${retryCount})`
console.warn(RetryMessage);
- creatErrorElement(file,file_name,RetryMessage,error)
-
+ creatErrorElement(file, file_name, RetryMessage, error)
+
// 延迟指定时间后继续上传
return sleep(retryDelay).then(() => uploadNextChunk(start, end, retries + 1));
} else {
// 达到最大重试次数时,输出错误信息并启用上传按钮
RetryMessage = `${file_name}上传失败!已达到最大重试次数(${retryCount})!`
console.error(RetryMessage);
- creatErrorElement(file,file_name,RetryMessage,error)
+ creatErrorElement(file, file_name, RetryMessage, error)
// 返回一个拒绝状态的Promise,以触发 catch 分支
return Promise.reject(RetryMessage);
}
@@ -100,7 +98,7 @@ const uploadFile = (file) => {
}
}
-const creatErrorElement = (file,file_name,CustomMessage,message) => {
+const creatErrorElement = (file, file_name, CustomMessage, message) => {
const identifier = `${file_name}_${file.size}_${file.lastModified}`;
const existingErrorElement = $response.querySelector(`.response-item.response-error[data-identifier="${identifier}"]`);
const ErrorMessage = CustomMessage ? `${CustomMessage} (${message})` : `${file_name}上传失败! (${message})`;
@@ -116,6 +114,15 @@ const creatErrorElement = (file,file_name,CustomMessage,message) => {
}
}
+const recoverUploadButton = () => {
+ // 恢复上传状态
+ $uploadFile.value = "";
+ $uploadFileLabel.textContent = "选择文件或拖拽到此区域";
+ $uploadFileLabel.style.backgroundColor = "#007BFF";
+ $uploadButton.disabled = false;
+ $uploadButton.textContent = "点击上传";
+}
+
const handleFileUpload = (file, showSuccessMessage, file_name, CustomMessage) => {
// 创建并返回一个 Promise 对象,用于异步处理上传逻辑
return new Promise((resolve, reject) => {
@@ -155,21 +162,20 @@ const handleFileUpload = (file, showSuccessMessage, file_name, CustomMessage) =>
复制外链
`;
$response.prepend(responseElement);
- $uploadFile.value = "";
- $uploadFileLabel.textContent = "选择文件或拖拽到此区域";
- $uploadFileLabel.style.backgroundColor = "#007BFF";
- // 恢复上传按钮状态
- $uploadButton.disabled = false;
- $uploadButton.textContent = "点击上传";
+ recoverUploadButton();
}
} else {
+ if (response.message === undefined) {
+ recoverUploadButton();
+ response.message = "未返回JSON数据!"
+ }
reject(response.message);
}
})
.catch(() => {
// 捕捉异常,处理上传失败逻辑
- creatErrorElement(file,file_name,CustomMessage,response.message);
+ creatErrorElement(file, file_name, CustomMessage, response.message);
// $response.appendChild(errorElement);
// reject(errorElement.textContent);
})
diff --git a/assets/templates_min/footer.tmpl b/assets/templates_min/footer.tmpl
index 5ab2535..1e7771b 100644
--- a/assets/templates_min/footer.tmpl
+++ b/assets/templates_min/footer.tmpl
@@ -1,3 +1,3 @@
{{define "public/footer"}}
-
+
{{end}}
\ No newline at end of file
diff --git a/tgstate_arm64 b/tgstate_arm64
deleted file mode 100755
index 7ba4247..0000000
Binary files a/tgstate_arm64 and /dev/null differ
diff --git a/tgstate_x64 b/tgstate_x64
deleted file mode 100755
index ec27ff0..0000000
Binary files a/tgstate_x64 and /dev/null differ