- sql/schema.sql: users/authorizations/auth_scenes/usage_logs + sessions 建表 - db.py: aiomysql 连接池,lifespan 内初始化与释放 - wechat_api.py: access_token 缓存 + 临时二维码创建 - auth.py: /auth/create_scene、/auth/status,handle_scan 事务内幂等处理扫码 - wechat.py: 接入 DB 生命周期,处理 subscribe/SCAN 事件;移除多余的 openid query 参数 - 首次关注赠送 7 天免费授权,has_claimed_free 条件更新保证幂等 - config.py/.env.example: 新增 FREE_AUTH_DAYS/SCENE_TTL_SECONDS/SESSION_TTL_HOURS
31 lines
660 B
Bash
31 lines
660 B
Bash
# 环境变量模板
|
|
#
|
|
# 使用方法:
|
|
# 1. 复制此文件为 .env
|
|
# 2. 填入你的实际值
|
|
# 3. .env 不会进 Git(已在 .gitignore 中排除)
|
|
#
|
|
# cp .env.example .env
|
|
|
|
# 微信测试号 - 从 https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login 获取
|
|
WECHAT_TOKEN=your_custom_token_here
|
|
WECHAT_APPID=your_appid_here
|
|
WECHAT_SECRET=your_secret_here
|
|
|
|
# MySQL
|
|
MYSQL_HOST=127.0.0.1
|
|
MYSQL_PORT=3306
|
|
MYSQL_USER=root
|
|
MYSQL_PASSWORD=your_mysql_password_here
|
|
MYSQL_DB=wechat_api
|
|
|
|
# Redis
|
|
REDIS_HOST=127.0.0.1
|
|
REDIS_PORT=6379
|
|
REDIS_PASSWORD=your_redis_password_here
|
|
|
|
# 业务配置
|
|
FREE_AUTH_DAYS=7
|
|
SCENE_TTL_SECONDS=300
|
|
SESSION_TTL_HOURS=24
|