v0.1.4 - 修复中途终止时上传成功但分享链接未打印的问题

This commit is contained in:
spiritlhl
2025-01-03 17:44:22 +08:00
parent 2ff558ae7b
commit d4cbd0772a
2 changed files with 39 additions and 14 deletions

View File

@@ -299,7 +299,7 @@ func UploadText(absPath string) (string, string, error) {
}
// ProcessAndUpload 创建结果文件并上传文件
func ProcessAndUpload(output string, filePath string, enableUplaod bool) {
func ProcessAndUpload(output string, filePath string, enableUplaod bool) (string, string) {
// 使用 defer 来处理 panic
defer func() {
if r := recover(); r != nil {
@@ -312,14 +312,14 @@ func ProcessAndUpload(output string, filePath string, enableUplaod bool) {
err = os.Remove(filePath)
if err != nil {
fmt.Println("无法删除文件:", err)
return
return "", ""
}
}
// 创建文件
file, err := os.Create(filePath)
if err != nil {
fmt.Println("无法创建文件:", err)
return
return "", ""
}
defer file.Close()
// 匹配 ANSI 转义序列
@@ -331,13 +331,13 @@ func ProcessAndUpload(output string, filePath string, enableUplaod bool) {
_, err = writer.WriteString(cleanedOutput)
if err != nil {
fmt.Println("无法写入文件:", err)
return
return "", ""
}
// 确保写入缓冲区的数据都刷新到文件中
err = writer.Flush()
if err != nil {
fmt.Println("无法刷新文件缓冲:", err)
return
return "", ""
}
fmt.Printf("测试结果已写入 %s\n", filePath)
if enableUplaod {
@@ -345,15 +345,16 @@ func ProcessAndUpload(output string, filePath string, enableUplaod bool) {
absPath, err := filepath.Abs(filePath)
if err != nil {
fmt.Println("无法获取文件绝对路径:", err)
return
return "", ""
}
// 上传文件并生成短链接
http_url, https_url, err := UploadText(absPath)
if err != nil {
fmt.Println("上传失败,无法生成链接")
fmt.Println(err.Error())
return
return "", ""
}
fmt.Printf("上传成功!\nHttp URL: %s\nHttps URL: %s\n", http_url, https_url)
return http_url, https_url
}
return "", ""
}