599f9d71f01f5d38222d47aab5a0d61bcf075557
peacematch 与 peace 的兑换接口鉴权机制完全不同: - peace: 表单发 csrfToken 字段,multipart 格式 - peacematch: 表单发 ctn 字段(值=acf_ccn),urlencoded 格式, cvl_csrf_token 只放 Cookie,不需要 batchExchangeLimit/preExchange 改动: - Activity 加 UseCTN/CTNURL 字段 - GenerateCSRF 对 UseCTN 活动额外 FetchCTN 获取 acf_ccn,组合返回 - 新增 postForm(urlencoded) 方法用于 peacematch 兑换 - Exchange 按 UseCTN 分流:peacematch 发 ctn 字段,peace 发 csrfToken - BatchExchangeLimit/PreExchange 对 UseCTN 活动跳过(返回默认值) - 参考 /Users/yml/codes/douyu_login_py 中 Python 实现
斗鱼抢购系统
Wails v2 桌面应用。
开发运行
wails dev
构建
# 构建当前平台
wails build
# 交叉编译
GOOS=windows GOARCH=amd64 wails build
GOOS=darwin GOARCH=amd64 wails build
GOOS=darwin GOARCH=arm64 wails build
GOOS=linux GOARCH=amd64 wails build
构建产物在 build/bin/ 目录。
项目结构
├── main.go # Wails 入口
├── app.go # App 结构体 + 前端可调用方法
├── frontend/
│ └── index.html # 前端页面
├── internal/
│ ├── client/ # 斗鱼接口客户端
│ ├── seckill/ # 抢购调度器
│ ├── logger/ # 日志系统
│ ├── trace/ # HTTP 请求追踪
│ ├── image/ # 成功图片生成
│ ├── config/ # 配置管理
│ ├── types/ # 类型定义
│ ├── constants/ # 常量
│ └── utils/ # 工具函数
├── data/
│ └── user.txt # 账号文件
└── build/ # 构建输出(gitignore)
环境变量
| 变量 | 说明 | 默认值 |
|---|---|---|
DOUYU_CONFIG |
配置文件路径 | config.json |
DOUYU_USERS |
账号文件路径 | data/user.txt |
DOUYU_LOG_DIR |
日志目录 | logs |
DOUYU_SUCCESS_DIR |
成功图片目录 | success_images |
DOUYU_FONT |
自定义字体路径 | 自动检测系统字体 |
DOUYU_TRACE |
启用 HTTP 追踪 | 关闭 |
DOUYU_TRACE_MAX_BODY |
trace 正文最大字节数 | 无限制 |
Languages
Go
66%
Vue
23%
TypeScript
6.1%
CSS
3.9%
Shell
0.9%