diff --git a/.github/ISSUE_TEMPLATE /bug_report.yml b/.github/ISSUE_TEMPLATE /bug_report.yml
deleted file mode 100644
index 3bbf504..0000000
--- a/.github/ISSUE_TEMPLATE /bug_report.yml
+++ /dev/null
@@ -1,44 +0,0 @@
-name: Bug Report \ 问题反馈
-description: Create a report to help us improve \ 帮助改进
-labels: ["Bug"]
-
-body:
- - type: input
- id: title
- attributes:
- label: Title \ 标题
- description: A brief summary of the bug. \ 对于该错误的简要总结。
- placeholder: Enter the bug title here. \ 在此输入错误标题。
- validations:
- required: true
-
- - type: textarea
- id: reproduce
- attributes:
- label: To Reproduce \ 操作流程
- description: Steps to reproduce the behaviour. \ 重现该行为的步骤。
- placeholder: |
- 1. Go to '...' \ 1. 进入 '...'
- 2. Click on '....' \ 2. 点击 '....'
- 3. Scroll down to '....' \ 3. 向下滚动到 '....'
- 4. See error \ 4. 查看错误
- validations:
- required: true
-
- - type: textarea
- id: expected-behaviour
- attributes:
- label: Expected Behaviour \ 预期结果
- description: A clear and concise description of what you expected to happen. \ 对您期望发生的事情的清晰简明描述。
- placeholder: A clear and concise description of what you expected to happen. \ 对您期望发生的事情的清晰简明描述。
- validations:
- required: true
-
- - type: textarea
- id: software-version
- attributes:
- label: Software Version \ 软件版本
- description: Please specify the version of the software you are using. \ 请指定您使用的软件版本。
- placeholder: Enter the software version here. \ 在此输入软件版本。
- validations:
- required: true
diff --git a/.github/ISSUE_TEMPLATE /feature_request.yml b/.github/ISSUE_TEMPLATE /feature_request.yml
deleted file mode 100644
index b68a98e..0000000
--- a/.github/ISSUE_TEMPLATE /feature_request.yml
+++ /dev/null
@@ -1,31 +0,0 @@
-name: Feature Request \ 功能建议
-description: Suggest an idea for this project \ 为这个项目提出一个新想法
-labels: ["Enhancement"]
-
-body:
- - type: input
- id: title
- attributes:
- label: Title \ 标题
- description: A brief summary of your feature request. \ 对您功能建议的简要总结。
- placeholder: Enter the feature title here. \ 在此输入功能标题。
- validations:
- required: true
-
- - type: textarea
- id: feature-suggestion
- attributes:
- label: Feature Suggestion \ 功能建议
- description: A clear and concise description of the feature you would like to suggest. \ 对您想要建议的功能的清晰简明描述。
- placeholder: Describe your feature suggestion here. \ 在此描述您的功能建议。
- validations:
- required: true
-
- - type: textarea
- id: proposed-solution
- attributes:
- label: Proposed Solution \ 你的方案
- description: A clear and concise description of your proposed solution. \ 对您提议的解决方案的清晰简明描述。
- placeholder: Describe your proposed solution here. \ 在此描述您的提议方案。
- validations:
- required: true
diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml
new file mode 100644
index 0000000..3d2eb50
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.yml
@@ -0,0 +1,42 @@
+name: "Bug Report \\ 问题反馈"
+description: "Create a report to help us improve \\ 帮助改进"
+labels: ["Bug"]
+
+body:
+ - type: input
+ id: title
+ attributes:
+ label: "Title \\ 标题"
+ description: "A brief summary of the bug. \\ 对于该错误的简要总结。"
+ placeholder: "Enter the bug title here. \\ 在此输入错误标题。"
+ validations:
+ required: true
+
+ - type: textarea
+ id: reproduce
+ attributes:
+ label: "To Reproduce \\ 操作流程"
+ description: "Steps to reproduce the behaviour. \\ 重现该行为的步骤。"
+ placeholder: |
+ 1. Go to '...' \ 进入 '...'
+ 2. Click on '....' \ 点击 '....'
+ validations:
+ required: true
+
+ - type: textarea
+ id: expected-behaviour
+ attributes:
+ label: "Expected Behaviour \\ 预期结果"
+ description: "A clear and concise description of what you expected to happen. \\ 对您期望发生的事情的清晰简明描述。"
+ placeholder: "A clear and concise description of what you expected to happen. \\ 对您期望发生的事情的清晰简明描述。"
+ validations:
+ required: true
+
+ - type: textarea
+ id: software-version
+ attributes:
+ label: "Software Version \\ 软件版本"
+ description: "Please specify the version of the software you are using. \\ 请指定您使用的软件版本。"
+ placeholder: "Enter the software version here. \\ 在此输入软件版本。"
+ validations:
+ required: true
diff --git a/.github/ISSUE_TEMPLATE /config.yml b/.github/ISSUE_TEMPLATE/config.yml
similarity index 100%
rename from .github/ISSUE_TEMPLATE /config.yml
rename to .github/ISSUE_TEMPLATE/config.yml
diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml
new file mode 100644
index 0000000..151c49f
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature_request.yml
@@ -0,0 +1,31 @@
+name: "Feature Request \\ 功能建议"
+description: "Suggest an idea for this project \\ 为这个项目提出一个新想法"
+labels: ["Enhancement"]
+
+body:
+ - type: input
+ id: title
+ attributes:
+ label: "Title \\ 标题"
+ description: "A brief summary of your feature request. \\ 对您功能建议的简要总结。"
+ placeholder: "Enter the feature title here. \\ 在此输入功能标题。"
+ validations:
+ required: true
+
+ - type: textarea
+ id: feature-suggestion
+ attributes:
+ label: "Feature Suggestion \\ 功能建议"
+ description: "A clear and concise description of the feature you would like to suggest. \\ 对您想要建议的功能的清晰简明描述。"
+ placeholder: "Describe your feature suggestion here. \\ 在此描述您的功能建议。"
+ validations:
+ required: true
+
+ - type: textarea
+ id: proposed-solution
+ attributes:
+ label: "Proposed Solution \\ 你的方案"
+ description: "A clear and concise description of your proposed solution. \\ 对您提议的解决方案的清晰简明描述。"
+ placeholder: "Describe your proposed solution here. \\ 在此描述您的提议方案。"
+ validations:
+ required: true
diff --git a/README-EN.md b/README-EN.md
new file mode 100644
index 0000000..5226734
--- /dev/null
+++ b/README-EN.md
@@ -0,0 +1,102 @@
+# res-downloader
+### 🎉 Aixiang Resource Downloader
+
+> A cross-platform resource downloader built with Go + [Wails](https://github.com/wailsapp/wails).
+Clean UI, easy to use, and supports a wide range of resource sniffing and downloading.
+
+### 📖 [中文](./README.md) | English
+
+---
+
+## ✨ Features
+
+- 🚀 **User-Friendly**: Simple operation with an intuitive and beautiful UI
+- 🖥️ **Cross-Platform**: Available on Windows / macOS / Linux
+- 🌐 **Supports Multiple Resource Types**: Video / Audio / Images / m3u8 / Live streams, and more
+- 📱 **Wide Platform Compatibility**: Works with WeChat Channels, Mini Programs, Douyin, Kuaishou, Xiaohongshu, KuGou Music, QQ Music, and more
+- 🌍 **Proxy Capture**: Built-in proxy allows fetching resources behind network restrictions
+
+---
+
+## 📚 Docs & Versions
+
+- 📘 [Online Documentation (Chinese)](https://res.putyy.com/)
+- 🧩 [Mini Version Ui Display using default browser](https://github.com/putyy/res-downloader) | [Old Electron Version Support Win7](https://github.com/putyy/res-downloader/tree/old)
+- 💬 [Join the User Group (Chinese)](https://www.putyy.com/app/admin/upload/img/20250418/6801d9554dc7.webp)
+ > *If full, you can add WeChat `AmorousWorld` with a note “From GitHub”*
+
+---
+
+## 🧩 Download Links
+
+- 🆕 [Download from GitHub](https://github.com/putyy/res-downloader/releases)
+- 🆕 [Download via Lanzou Cloud (Password: 9vs5)](https://wwjv.lanzoum.com/b04wgtfyb)
+- ⚠️ *Windows 7 users: Please use version `2.3.0`*
+
+---
+
+## 🚀 How to Use
+
+> Follow these steps to use the software correctly:
+
+1. During installation, be sure to **allow certificate installation** and **grant network access**
+2. Launch the software → Click **"Start Proxy"** at the top left
+3. Choose the resource types to capture (default is all)
+4. Open the target content externally (WeChat, Mini App, Browser, etc.)
+5. Return to the homepage to view the captured resource list
+
+---
+
+## 🖼️ Screenshot
+
+
+
+---
+
+## ❓ FAQ
+
+### 📺 m3u8 Video Resources
+
+- Online Preview: [m3u8play](https://m3u8play.com/)
+- Download Tool: [m3u8-down](https://m3u8-down.gowas.cn/)
+
+### 📡 Live Stream Resources
+
+- We recommend [OBS](https://obsproject.com/) for recording (search for setup tutorials)
+
+### 🐢 Slow Downloads or Large File Failures?
+
+- Recommended download managers:
+ - [Neat Download Manager](https://www.neatdownloadmanager.com/index.php/en/)
+ - [Motrix](https://motrix.app/download)
+- For WeChat videos, click `Decrypt Video` after download
+
+### 🧩 Unable to Intercept Resources?
+
+- Check your system proxy settings:
+ Address: 127.0.0.1
+ Port: 8899
+
+### 🌐 Can't Access Internet After Closing the App?
+
+- Manually disable the system proxy settings
+
+### 🧠 More Questions?
+
+- [GitHub Issues](https://github.com/putyy/res-downloader/issues)
+- [Aixiang Forum Thread (Chinese)](https://s.gowas.cn/d/4089)
+
+---
+
+## 💡 Principles & Motivation
+
+This tool captures traffic via a local proxy and filters useful resources.
+Its working principle is similar to tools like Fiddler, Charles, or browser DevTools, but with a more user-friendly display and enhanced filtering, making it suitable for everyday users with minimal tech background.
+
+---
+
+## ⚠️ Disclaimer
+
+> This software is for educational and research purposes only.
+Commercial or illegal use is strictly prohibited.
+The author is not responsible for any consequences arising from misuse.
diff --git a/README.md b/README.md
index e17984c..5bb43cd 100644
--- a/README.md
+++ b/README.md
@@ -1,52 +1,99 @@
-## res-downloader
-### 爱享素材下载器
+# res-downloader
+### 🎉 爱享素材下载器
-🎯 基于Go + [wails](https://github.com/wailsapp/wails)
-📦 操作简单、可获取不同类型资源
-🖥️ 支持Windows、Mac、Linux
-🌐 支持视频、音频、图片、m3u8、直播流等常见网络资源
-💪 支持微信视频号、小程序、抖音、快手、小红书、酷狗音乐、qq音乐等网络资源下载
-👼 支持设置代理以获取特殊网络下的资源
+> 一款基于 Go + [Wails](https://github.com/wailsapp/wails) 的跨平台资源下载工具,简洁易用,支持多种资源嗅探与下载。
-## [在线文档](https://res.putyy.com/)、[加入群聊](https://www.putyy.com/app/admin/upload/img/20250418/6801d9554dc7.webp)、[Electron版](https://github.com/putyy/res-downloader/tree/old)
-## 群满+v:AmorousWorld 请备注来源
+### 📖 中文 | [English](./README-EN.md)
-## 软件下载(Win7下载2.3.0版本)
-🆕 [github下载](https://github.com/putyy/res-downloader/releases)
-🆕 [蓝奏云下载 密码:9vs5](https://wwjv.lanzoum.com/b04wgtfyb)
+---
-## 使用方法
-> 0. 安装时一定要同意安装证书文件、一定要允许网络访问
-> 1. 打开本软件 软件首页左上角点击 “启动代理”
-> 2. 软件首页选择要获取的资源类型(默认选中的全部)
-> 3. 打开要捕获的源, 如:视频号、网页、小程序等等
-> 4. 返回软件首页即可看到资源列表
+## ✨ 功能特色
-## 软件截图
-
+- 🚀 **简单易用**:操作简单,界面清晰美观
+- 🖥️ **多平台支持**:Windows / macOS / Linux
+- 🌐 **多资源类型支持**:视频 / 音频 / 图片 / m3u8 / 直播流等
+- 📱 **平台兼容广泛**:支持微信视频号、小程序、抖音、快手、小红书、酷狗音乐、QQ音乐等
+- 🌍 **代理抓包**:支持设置代理获取受限网络下的资源
-## 常见问题
-m3u8: 预览和下载:
-> [下载](https://m3u8-down.gowas.cn/) [预览](https://m3u8play.com/)
+---
-直播流: 预览和录制:
-> [使用obs进行预览和录制 使用教程自行百度]( https://obsproject.com/)
+## 📚 文档 & 版本
-下载慢、大视频下载失败
-> 推荐使用如下工具加速下载,视频号可以下载完成后再到对应视频操作项选择 “视频解密(视频号)” 按钮
->> [Neat Download Manager](https://www.neatdownloadmanager.com/index.php/en/)、[Motrix](https://motrix.app/download)等软件进行下载
+- 📘 [在线文档](https://res.putyy.com/)
+- 🧩 [Mini版 UI使用默认浏览器展示](https://github.com/putyy/res-downloader) | [Electron旧版 支持Win7](https://github.com/putyy/res-downloader/tree/old)
+- 💬 [加入交流群](https://www.putyy.com/app/admin/upload/img/20250418/6801d9554dc7.webp)
+ > *群满时可加微信 `AmorousWorld`,请备注“来源”*
-打开本软件,无法正常拦截获取
-> 检查系统代理是否正确设置 代理地址:127.0.0.1 端口:8899
+---
-关闭软件后无法正常上网
-> 手动关闭系统代理设置
+## 🧩 下载地址
-其他问题
-[github](https://github.com/putyy/res-downloader/issues) 、 [爱享论坛](https://s.gowas.cn/d/4089)
+- 🆕 [GitHub 下载](https://github.com/putyy/res-downloader/releases)
+- 🆕 [蓝奏云下载(密码:9vs5)](https://wwjv.lanzoum.com/b04wgtfyb)
+- ⚠️ *Win7 用户请下载 `2.3.0` 版本*
-## 实现 & 初衷
-通过代理网络抓包拦截响应,筛选出有用的资源, 同fiddler、charles等抓包软件、浏览器F12打开控制也能达到目的,只不过这些软件需要手动进行筛选,对于小白用户上手还是有点难度,本软件对部分资源做了特殊处理,更适合大众用户,所以就有了本项目。
+---
-## 免责声明
-本软件用于学习研究使用,若因使用本软件造成的一切法律责任均与本人无关!
+## 🚀 使用方法
+
+> 请按以下步骤操作以正确使用软件:
+
+1. 安装时务必 **允许安装证书文件** 并 **允许网络访问**
+2. 打开软件 → 首页左上角点击 **“启动代理”**
+3. 选择要获取的资源类型(默认全部)
+4. 在外部打开资源页面(如视频号、小程序、网页等)
+5. 返回软件首页,即可看到资源列表
+
+---
+
+## 🖼️ 软件截图
+
+
+
+---
+
+## ❓ 常见问题
+
+### 📺 m3u8 视频资源
+
+- 在线预览:[m3u8play](https://m3u8play.com/)
+- 视频下载:[m3u8-down](https://m3u8-down.gowas.cn/)
+
+### 📡 直播流资源
+
+- 推荐使用 [OBS](https://obsproject.com/) 进行录制(教程请百度)
+
+### 🐢 下载慢、大文件失败?
+
+- 推荐工具:
+ - [Neat Download Manager](https://www.neatdownloadmanager.com/index.php/en/)
+ - [Motrix](https://motrix.app/download)
+- 视频号资源下载后可在操作项点击 `视频解密(视频号)`
+
+### 🧩 软件无法拦截资源?
+
+- 检查是否正确设置系统代理:
+ 地址:127.0.0.1
+ 端口:8899
+
+### 🌐 关闭软件后无法上网?
+
+- 手动关闭系统代理设置
+
+### 🧠 更多问题
+
+- [GitHub Issues](https://github.com/putyy/res-downloader/issues)
+- [爱享论坛讨论帖](https://s.gowas.cn/d/4089)
+
+---
+
+## 💡 实现原理 & 初衷
+
+本工具通过代理方式实现网络抓包,并筛选可用资源。与 Fiddler、Charles、浏览器 DevTools 原理类似,但对资源进行了更友好的筛选、展示和处理,大幅度降低了使用门槛,更适合大众用户使用。
+
+---
+
+## ⚠️ 免责声明
+
+> 本软件仅供学习与研究用途,禁止用于任何商业或违法用途。
+如因此产生的任何法律责任,概与作者无关!
diff --git a/build/README.md b/build/README.md
index 13b3939..5fc4ea3 100644
--- a/build/README.md
+++ b/build/README.md
@@ -2,13 +2,13 @@
```bash
wails build -platform "darwin/universal"
create-dmg 'build/bin/res-downloader.app' --overwrite ./build/bin
-mv -f "build/bin/res-downloader $(jq -r '.info.productVersion' wails.json).dmg" "build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json).dmg"
+mv -f "build/bin/res-downloader $(jq -r '.info.productVersion' wails.json).dmg" "build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_mac.dmg"
```
## Windows
```bash
-wails build -f -nsis -platform "windows/amd64" -webview2 Embed && mv -f "build/bin/res-downloader-amd64-installer.exe" "build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_win_x64.exe"
-wails build -f -nsis -platform "windows/arm64" -webview2 Embed && mv -f "build/bin/res-downloader-arm64-installer.exe" "build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_win_arm.exe"
+wails build -f -nsis -platform "windows/amd64" -webview2 Embed && mv -f "build/bin/res-downloader-amd64-installer.exe" "build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_win_amd64.exe"
+wails build -f -nsis -platform "windows/arm64" -webview2 Embed && mv -f "build/bin/res-downloader-arm64-installer.exe" "build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_win_arm64.exe"
```
## Linux
@@ -20,12 +20,12 @@ docker build --network host -f build/linux/dockerfile -t res-downloader-amd-linu
docker run -it --name res-downloader-amd-build --network host --privileged -v ./:/www/res-downloader res-downloader-amd-linux /bin/bash
# 容器内
cd /www/res-downloader
-wails build
+wails build -platform "linux/amd64" -s -skipbindings
# 打包debian
cp build/bin/res-downloader build/linux/Debian/usr/local/bin/
echo "$(cat build/linux/Debian/DEBIAN/.control | sed -e "s/{{Version}}/$(jq -r '.info.productVersion' wails.json)/g")" > build/linux/Debian/DEBIAN/control
-dpkg-deb --build ./build/linux/Debian build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_x64.deb
+dpkg-deb --build ./build/linux/Debian build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_linux_amd64.deb
# 打包AppImage
cp build/bin/res-downloader build/linux/AppImage/usr/bin/
@@ -39,7 +39,9 @@ popd
wget -O ./build/bin/appimagetool-x86_64.AppImage https://github.com/AppImage/AppImageKit/releases/download/13/appimagetool-x86_64.AppImage
chmod +x ./build/bin/appimagetool-x86_64.AppImage
-./build/bin/appimagetool-x86_64.AppImage build/linux/AppImage build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_x64.AppImage
+./build/bin/appimagetool-x86_64.AppImage build/linux/AppImage build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_linux_amd64.AppImage
+
+cp build/bin/res-downloader build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_linux_amd64
```
> arm64
@@ -49,12 +51,14 @@ docker build --platform linux/arm64 --network host -f build/linux/dockerfile -t
docker run --platform linux/arm64 -it --name res-downloader-arm-build --network host --privileged -v ./:/www/res-downloader res-downloader-arm-linux /bin/bash
# 容器内
cd /www/res-downloader
-wails build
+wails build -platform "linux/arm64" -s -skipbindings
# 打包debian
cp build/bin/res-downloader build/linux/Debian/usr/local/bin/
echo "$(cat build/linux/Debian/DEBIAN/.control | sed -e "s/{{Version}}/$(jq -r '.info.productVersion' wails.json)/g")" > build/linux/Debian/DEBIAN/control
-dpkg-deb --build ./build/linux/Debian build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_arm.deb
+dpkg-deb --build ./build/linux/Debian build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_linux_arm64.deb
+
+cp build/bin/res-downloader build/bin/res-downloader_$(jq -r '.info.productVersion' wails.json)_linux_arm64
```
### Arch Linux
diff --git a/build/linux/dockerfile b/build/linux/dockerfile
index ddc5ec7..f03d049 100644
--- a/build/linux/dockerfile
+++ b/build/linux/dockerfile
@@ -1,4 +1,4 @@
-FROM golang:1.23.4-bookworm
+FROM golang:1.24.2-bookworm
WORKDIR /
diff --git a/build/windows/installer/wails_tools.nsh b/build/windows/installer/wails_tools.nsh
index 630936f..fd35a46 100644
--- a/build/windows/installer/wails_tools.nsh
+++ b/build/windows/installer/wails_tools.nsh
@@ -14,7 +14,7 @@
!define INFO_PRODUCTNAME "res-downloader"
!endif
!ifndef INFO_PRODUCTVERSION
- !define INFO_PRODUCTVERSION "3.0.3"
+ !define INFO_PRODUCTVERSION "3.0.4"
!endif
!ifndef INFO_COPYRIGHT
!define INFO_COPYRIGHT "Copyright © 2023"
diff --git a/core/downloader.go b/core/downloader.go
index 4c5694c..106f8b2 100644
--- a/core/downloader.go
+++ b/core/downloader.go
@@ -76,15 +76,30 @@ func (fd *FileDownloader) init() error {
}
}
- resp, e := http.Head(fd.Url)
- if e != nil {
- return e
+ req, err := http.NewRequest("HEAD", fd.Url, nil)
+ if err != nil {
+ return fmt.Errorf("create request failed")
}
+ // 设置请求头
+ if globalConfig.UserAgent != "" {
+ req.Header.Set("User-Agent", globalConfig.UserAgent)
+ }
+
+ if fd.Referer != "" {
+ req.Header.Set("Referer", fd.Referer)
+ }
+
+ resp, err := fd.buildClient().Do(req)
+ if err != nil {
+ return fmt.Errorf("request failed" + err.Error())
+ }
+ defer resp.Body.Close()
+
fd.TotalSize = resp.ContentLength
if fd.TotalSize <= 0 {
- return fmt.Errorf("invalid file")
+ return fmt.Errorf("request init failed: size 0")
}
if resp.Header.Get("Accept-Ranges") == "bytes" && fd.TotalSize > 10485760 {
diff --git a/core/proxy.go b/core/proxy.go
index cd27e78..c6bf23c 100644
--- a/core/proxy.go
+++ b/core/proxy.go
@@ -249,8 +249,10 @@ func (p *Proxy) httpResponseEvent(resp *http.Response, ctx *goproxy.ProxyCtx) *h
if strings.HasSuffix(host, "res.wx.qq.com") {
respTemp := resp
+ is := false
if strings.HasSuffix(respTemp.Request.URL.RequestURI(), ".js?v="+p.v()) {
respTemp = p.replaceWxJsContent(respTemp, ".js\"", ".js?v="+p.v()+"\"")
+ is = true
}
if strings.Contains(Path, "web/web-finder/res/js/virtual_svg-icons-register.publish") {
@@ -292,7 +294,9 @@ func (p *Proxy) httpResponseEvent(resp *http.Response, ctx *goproxy.ProxyCtx) *h
respTemp.Header.Set("Content-Length", fmt.Sprintf("%d", len(newBodyBytes)))
return respTemp
}
- return respTemp
+ if is {
+ return respTemp
+ }
}
classify, suffix := TypeSuffix(resp.Header.Get("Content-Type"))
diff --git a/frontend/src/views/setting.vue b/frontend/src/views/setting.vue
index e3d8894..7a4efd6 100644
--- a/frontend/src/views/setting.vue
+++ b/frontend/src/views/setting.vue
@@ -138,9 +138,6 @@
如不清楚请保持默认
-
- 保存
-
@@ -175,6 +172,10 @@ const options = [
const formValue = ref(Object.assign({}, store.globalConfig))
+watch(formValue.value, () => {
+ store.setConfig(Object.assign({}, store.globalConfig, formValue.value))
+}, {deep: true})
+
watch(()=>{
return store.globalConfig.Theme
}, ()=>{
@@ -194,9 +195,4 @@ const selectDir = () => {
window?.$message?.error(err)
});
}
-
-const save = () => {
- store.setConfig(formValue.value)
- window?.$message?.success("保存成功")
-}
\ No newline at end of file
diff --git a/frontend/wailsjs/runtime/runtime.d.ts b/frontend/wailsjs/runtime/runtime.d.ts
index 94778df..4445dac 100644
--- a/frontend/wailsjs/runtime/runtime.d.ts
+++ b/frontend/wailsjs/runtime/runtime.d.ts
@@ -134,7 +134,7 @@ export function WindowIsFullscreen(): Promise;
// [WindowSetSize](https://wails.io/docs/reference/runtime/window#windowsetsize)
// Sets the width and height of the window.
-export function WindowSetSize(width: number, height: number): Promise;
+export function WindowSetSize(width: number, height: number): void;
// [WindowGetSize](https://wails.io/docs/reference/runtime/window#windowgetsize)
// Gets the width and height of the window.
diff --git a/go.mod b/go.mod
index 7846d98..068c009 100644
--- a/go.mod
+++ b/go.mod
@@ -9,8 +9,8 @@ require (
github.com/matoous/go-nanoid/v2 v2.1.0
github.com/rs/zerolog v1.33.0
github.com/vrischmann/userdir v0.0.0-20151206171402-20f291cebd68
- github.com/wailsapp/wails/v2 v2.9.2
- golang.org/x/sys v0.28.0
+ github.com/wailsapp/wails/v2 v2.10.1
+ golang.org/x/sys v0.30.0
)
require (
@@ -30,13 +30,13 @@ require (
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/rivo/uniseg v0.4.7 // indirect
- github.com/samber/lo v1.47.0 // indirect
+ github.com/samber/lo v1.49.1 // indirect
github.com/tkrajina/go-reflector v0.5.8 // indirect
github.com/valyala/bytebufferpool v1.0.0 // indirect
github.com/valyala/fasttemplate v1.2.2 // indirect
- github.com/wailsapp/go-webview2 v1.0.18 // indirect
+ github.com/wailsapp/go-webview2 v1.0.19 // indirect
github.com/wailsapp/mimetype v1.4.1 // indirect
- golang.org/x/crypto v0.31.0 // indirect
- golang.org/x/net v0.33.0 // indirect
- golang.org/x/text v0.21.0 // indirect
+ golang.org/x/crypto v0.33.0 // indirect
+ golang.org/x/net v0.35.0 // indirect
+ golang.org/x/text v0.22.0 // indirect
)
diff --git a/go.sum b/go.sum
index f2e4521..32cefb7 100644
--- a/go.sum
+++ b/go.sum
@@ -51,8 +51,8 @@ github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUc
github.com/rs/xid v1.5.0/go.mod h1:trrq9SKmegXys3aeAKXMUTdJsYXVwGY3RLcfgqegfbg=
github.com/rs/zerolog v1.33.0 h1:1cU2KZkvPxNyfgEmhHAz/1A9Bz+llsdYzklWFzgp0r8=
github.com/rs/zerolog v1.33.0/go.mod h1:/7mN4D5sKwJLZQ2b/znpjC3/GQWY/xaDXUM0kKWRHss=
-github.com/samber/lo v1.47.0 h1:z7RynLwP5nbyRscyvcD043DWYoOcYRv3mV8lBeqOCLc=
-github.com/samber/lo v1.47.0/go.mod h1:RmDH9Ct32Qy3gduHQuKJ3gW1fMHAnE/fAzQuf6He5cU=
+github.com/samber/lo v1.49.1 h1:4BIFyVfuQSEpluc7Fua+j1NolZHiEHEpaSEKdsH0tew=
+github.com/samber/lo v1.49.1/go.mod h1:dO6KHFzUKXgP8LDhU0oI8d2hekjXnGOu0DB8Jecxd6o=
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
github.com/tkrajina/go-reflector v0.5.8 h1:yPADHrwmUbMq4RGEyaOUpz2H90sRsETNVpjzo3DLVQQ=
@@ -63,17 +63,17 @@ github.com/valyala/fasttemplate v1.2.2 h1:lxLXG0uE3Qnshl9QyaK6XJxMXlQZELvChBOCmQ
github.com/valyala/fasttemplate v1.2.2/go.mod h1:KHLXt3tVN2HBp8eijSv/kGJopbvo7S+qRAEEKiv+SiQ=
github.com/vrischmann/userdir v0.0.0-20151206171402-20f291cebd68 h1:Ah2/69Z24rwD6OByyOdpJDmttftz0FTF8Q4QZ/SF1E4=
github.com/vrischmann/userdir v0.0.0-20151206171402-20f291cebd68/go.mod h1:EqKqAeKddSL9XSGnfXd/7iLncccKhR16HBKVva7ENw8=
-github.com/wailsapp/go-webview2 v1.0.18 h1:SSSCoLA+MYikSp1U0WmvELF/4c3x5kH8Vi31TKyZ4yk=
-github.com/wailsapp/go-webview2 v1.0.18/go.mod h1:qJmWAmAmaniuKGZPWwne+uor3AHMB5PFhqiK0Bbj8kc=
+github.com/wailsapp/go-webview2 v1.0.19 h1:7U3QcDj1PrBPaxJNCui2k1SkWml+Q5kvFUFyTImA6NU=
+github.com/wailsapp/go-webview2 v1.0.19/go.mod h1:qJmWAmAmaniuKGZPWwne+uor3AHMB5PFhqiK0Bbj8kc=
github.com/wailsapp/mimetype v1.4.1 h1:pQN9ycO7uo4vsUUuPeHEYoUkLVkaRntMnHJxVwYhwHs=
github.com/wailsapp/mimetype v1.4.1/go.mod h1:9aV5k31bBOv5z6u+QP8TltzvNGJPmNJD4XlAL3U+j3o=
-github.com/wailsapp/wails/v2 v2.9.2 h1:Xb5YRTos1w5N7DTMyYegWaGukCP2fIaX9WF21kPPF2k=
-github.com/wailsapp/wails/v2 v2.9.2/go.mod h1:uehvlCwJSFcBq7rMCGfk4rxca67QQGsbg5Nm4m9UnBs=
-golang.org/x/crypto v0.31.0 h1:ihbySMvVjLAeSH1IbfcRTkD/iNscyz8rGzjF/E5hV6U=
-golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk=
+github.com/wailsapp/wails/v2 v2.10.1 h1:QWHvWMXII2nI/nXz77gpPG8P3ehl6zKe+u4su5BWIns=
+github.com/wailsapp/wails/v2 v2.10.1/go.mod h1:zrebnFV6MQf9kx8HI4iAv63vsR5v67oS7GTEZ7Pz1TY=
+golang.org/x/crypto v0.33.0 h1:IOBPskki6Lysi0lo9qQvbxiQ+FvsCC/YWOecCHAixus=
+golang.org/x/crypto v0.33.0/go.mod h1:bVdXmD7IV/4GdElGPozy6U7lWdRXA4qyRVGJV57uQ5M=
golang.org/x/net v0.0.0-20210505024714-0287a6fb4125/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
-golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I=
-golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4=
+golang.org/x/net v0.35.0 h1:T5GQRQb2y08kTAByq9L4/bz8cipCdA8FbRTXewonqY8=
+golang.org/x/net v0.35.0/go.mod h1:EglIi67kWsHKlRzzVMUD93VMSWGFOMSZgxFjparz1Qk=
golang.org/x/sys v0.0.0-20200810151505-1b9f1253b3ed/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@@ -81,12 +81,12 @@ golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBc
golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.12.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA=
-golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/sys v0.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc=
+golang.org/x/sys v0.30.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
-golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
+golang.org/x/text v0.22.0 h1:bofq7m3/HAFvbF51jz3Q9wLg3jkvSPuiZu/pD1XwgtM=
+golang.org/x/text v0.22.0/go.mod h1:YRoo4H8PVmsu+E3Ou7cqLVH8oXWIHVoX0jqUWALQhfY=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
diff --git a/main.go b/main.go
index 435d279..d8d0587 100644
--- a/main.go
+++ b/main.go
@@ -61,7 +61,7 @@ func main() {
|_| \___| |___/ \__,_| \___/ \_/\_/ |_| |_| |_| \___/ \__ ,_| \__,_| \___| |_|`
log.Println(logo)
- fmt.Println("version", app.Version)
+ fmt.Println("version:", app.Version)
fmt.Println("lockfile:", app.LockFile)
app.Startup(ctx)
},
diff --git a/wails.json b/wails.json
index 70e196a..538c86c 100644
--- a/wails.json
+++ b/wails.json
@@ -13,7 +13,7 @@
"info": {
"companyName": "res-downloader",
"productName": "res-downloader",
- "productVersion": "3.0.3",
+ "productVersion": "3.0.4",
"copyright": "Copyright © 2023",
"comments": "This is a high-value, high-performance, and diverse resource downloader called res-downloader."
}