diff --git a/.idea/jsLibraryMappings.xml b/.idea/jsLibraryMappings.xml new file mode 100644 index 0000000..6b253d1 --- /dev/null +++ b/.idea/jsLibraryMappings.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/backend/app/routers/user_auth.py b/backend/app/routers/user_auth.py index 72d37b2..45228f7 100644 --- a/backend/app/routers/user_auth.py +++ b/backend/app/routers/user_auth.py @@ -1,4 +1,5 @@ from fastapi import APIRouter, Depends, HTTPException +from fastapi.responses import JSONResponse # 新增导入 from fastapi.security import OAuth2PasswordRequestForm from ..schemas.user_auth import ( UserLoginRequest, @@ -7,7 +8,8 @@ from ..schemas.user_auth import ( SendCodeRequest, RegisterRequest, CheckUserExistenceRequest, -WechatBindRequest +WechatBindRequest, +UseWxGetPhoneNumberRequest ) from ..schemas.admin_auth import TokenResponse from ..services.user_login_service import ( @@ -18,7 +20,8 @@ from ..services.user_login_service import ( register_user, check_user_existence, check_wx_bind_status, -bind_wechat_openid + bind_wechat_openid, + use_wx_phoneNumber ) from ..services.auth_service import generate_login_token from ..utils.jwt_handler import verify_token @@ -114,6 +117,29 @@ async def bind_wechat_account(request: WechatBindRequest): """绑定微信账号""" try: return await bind_wechat_openid(request.token, request.code) + except HTTPException as e: + raise e + except Exception: + raise HTTPException(500, "微信绑定服务暂时不可用") + + +@router.post("/useWxGetPhoneNumber") +async def use_wx_get_phone_number(request: UseWxGetPhoneNumberRequest): + """使用微信登录获取手机号""" + try: + result = await use_wx_phoneNumber(request.code) + + # 生成JWT令牌(记住登录状态7天) + token, expires_in = generate_login_token(result["user"]["phone_number"], remember_me=True) + return JSONResponse( + status_code=200, + content={ + "access_token": token, + "token_type": "bearer", + "expires_in": expires_in + } + ) + except HTTPException as e: raise e except Exception: diff --git a/backend/app/routers/user_coupon.py b/backend/app/routers/user_coupon.py index 0e720e4..6e800e1 100644 --- a/backend/app/routers/user_coupon.py +++ b/backend/app/routers/user_coupon.py @@ -1,5 +1,5 @@ from fastapi import APIRouter, Depends -from ..services.user_coupon_service import get_user_coupons_service, apply_coupon_service +from ..services.user_coupon_service import get_user_coupons_service, apply_coupon_service, redeem_coupon_service from pydantic import BaseModel class GetUserCouponsRequest(BaseModel): @@ -10,6 +10,10 @@ class CouponApplyRequest(BaseModel): coupon_id: int order_id: int +class RedeemCouponRequest(BaseModel): + token: str + coupon_code: str + router = APIRouter() @router.post("/user/coupons") @@ -19,3 +23,7 @@ def get_user_coupons(request: GetUserCouponsRequest): @router.post("/user/apply-coupon") def apply_coupon(request: CouponApplyRequest): return apply_coupon_service(request.token, request.coupon_id, request.order_id) + +@router.post("/user/redeem-coupon") +def redeem_coupon(request: RedeemCouponRequest): + return redeem_coupon_service(request.token, request.coupon_code) diff --git a/backend/app/schemas/user_auth.py b/backend/app/schemas/user_auth.py index 2e7bb0b..c1887dd 100644 --- a/backend/app/schemas/user_auth.py +++ b/backend/app/schemas/user_auth.py @@ -27,4 +27,7 @@ class CheckUserExistenceRequest(BaseModel): class WechatBindRequest(BaseModel): token: str + code: str + +class UseWxGetPhoneNumberRequest(BaseModel): code: str \ No newline at end of file diff --git a/backend/app/services/user_coupon_service.py b/backend/app/services/user_coupon_service.py index 1b6be49..c728638 100644 --- a/backend/app/services/user_coupon_service.py +++ b/backend/app/services/user_coupon_service.py @@ -109,6 +109,71 @@ def apply_coupon_service(token: str, coupon_id: int, order_id: float): except Exception as e: raise HTTPException(status_code=500, detail=str(e)) + finally: + cursor.close() + connection.close() + + +def redeem_coupon_service(token: str, code: str): + """用户兑换优惠券""" + try: + # 验证用户身份 + payload = verify_token(token) + connection = get_connection() + cursor = connection.cursor(dictionary=True) + + # 获取用户ID + cursor.execute("SELECT user_id FROM users WHERE phone_number = %s", (payload["sub"],)) + user = cursor.fetchone() + if not user: + raise HTTPException(status_code=404, detail="用户不存在") + user_id = user['user_id'] + + # 查询优惠券 + cursor.execute(""" + SELECT coupon_id, valid_from, valid_to, quantity + FROM coupons + WHERE coupon_code = %s + FOR UPDATE + """, (code,)) + coupon = cursor.fetchone() + + if not coupon: + raise HTTPException(status_code=201, detail="券码不存在") + + # 检查有效期 + current_time = datetime.now() + if current_time < coupon['valid_from']: + raise HTTPException(status_code=202, detail="券码已过期") + if current_time > coupon['valid_to']: + raise HTTPException(status_code=202, detail="券码已过期") + + # 检查库存并减少 + cursor.execute(""" + UPDATE coupons + SET quantity = quantity - 1 + WHERE coupon_id = %s + AND quantity > 0 + """, (coupon['coupon_id'],)) + if cursor.rowcount == 0: + raise HTTPException(status_code=203, detail="券码库存不足") + + # 添加用户优惠券关联 + cursor.execute(""" + INSERT INTO user_coupons (user_id, coupon_id) + VALUES (%s, %s) + """, (user_id, coupon['coupon_id'])) + + connection.commit() + print("coupon redeemed successfully") + return {"code": 200, "message": "优惠券发放成功"} + + except HTTPException: + # 直接重新抛出已捕获的HTTPException + raise + except Exception as e: + connection.rollback() + raise HTTPException(status_code=500, detail=str(e)) finally: cursor.close() connection.close() \ No newline at end of file diff --git a/backend/app/services/user_login_service.py b/backend/app/services/user_login_service.py index 2debf40..832a8c5 100644 --- a/backend/app/services/user_login_service.py +++ b/backend/app/services/user_login_service.py @@ -6,6 +6,7 @@ from ..utils.sms_sender import send_sms # 需要实现阿里云短信发送 import redis from configparser import ConfigParser import os +import requests redis_client = redis.Redis(host='localhost', port=6379, db=0) from ..schemas.user_auth import ( UserLoginRequest, @@ -14,6 +15,7 @@ from ..schemas.user_auth import ( SendCodeRequest, CheckUserExistenceRequest ) +from ..utils import get_accesstoken async def authenticate_user(phone_number: str, password: str): """手机号密码登录验证""" @@ -219,3 +221,57 @@ async def bind_wechat_openid(token: str, code: str): finally: cursor.close() connection.close() + + +async def use_wx_phoneNumber(code: str): + """通过微信code获取用户手机号并检查注册状态""" + try: + access_token = get_accesstoken.get_access_token() + + wx_url = "https://api.weixin.qq.com/wxa/business/getuserphonenumber" + params = {"access_token": access_token} + response = requests.post(wx_url, params=params, json={"code": code}) + wx_data = response.json() + + if wx_data.get("errcode") != 0: + raise HTTPException(400, f"微信接口错误: {wx_data.get('errmsg')}") + + phone_number = wx_data["phone_info"]["phoneNumber"] + + conn = get_connection() + cursor = conn.cursor(dictionary=True) + + # 检查用户是否存在 + cursor.execute("SELECT * FROM users WHERE phone_number = %s", (phone_number,)) + user = cursor.fetchone() + + if not user: + # 自动注册新用户 + + cursor.execute( + "INSERT INTO users (phone_number, username, password) VALUES (%s, %s, %s)", + (phone_number, "用户_临时", "no_set") + ) + # 获取新用户ID并更新用户名 + user_id = cursor.lastrowid + cursor.execute( + "UPDATE users SET username = %s WHERE user_id = %s", + (f"用户_{user_id}", user_id) + ) + conn.commit() + # 重新查询新用户信息 + cursor.execute("SELECT * FROM users WHERE user_id = %s", (user_id,)) + user = cursor.fetchone() + + return {"user": user} + + except requests.RequestException: + raise HTTPException(503, "无法连接微信服务器") + except KeyError: + raise HTTPException(400, "无效的微信响应格式") + finally: + # 确保关闭数据库连接 + if 'cursor' in locals(): + cursor.close() + if 'conn' in locals(): + conn.close() diff --git a/backend/app/utils/get_accesstoken.py b/backend/app/utils/get_accesstoken.py new file mode 100644 index 0000000..8b1f273 --- /dev/null +++ b/backend/app/utils/get_accesstoken.py @@ -0,0 +1,71 @@ +import requests +import time +import configparser + +# 全局变量用于缓存 Token 信息 +_access_token = None +_expires_time = 0 +_appid = None +_secret = None + + +def get_access_token() -> str: + """ + 获取微信 Access Token(带缓存机制) + + 参数: + appid: 微信小程序 AppID + secret: 微信小程序 AppSecret + + 返回: + str: 有效的 Access Token + + 异常: + Exception: 包含错误信息的异常 + """ + config = configparser.ConfigParser() + config.read('backend/config.conf') + wechat = config['wechat'] + appid = wechat['appid'] + secret = wechat['secret'] + + global _access_token, _expires_time, _appid, _secret + + # 检查缓存有效性(相同凭证且未过期) + if _appid == appid and _secret == secret and _access_token and time.time() < _expires_time: + print(f"使用缓存的 Access Token: {_access_token},有效期至 {time.ctime(_expires_time)}") + return _access_token + + # 请求新的 Access Token + url = "https://api.weixin.qq.com/cgi-bin/token" + params = { + "grant_type": "client_credential", + "appid": appid, + "secret": secret + } + + try: + response = requests.get(url, params=params) + response.raise_for_status() # 检查 HTTP 状态码 + data = response.json() + except requests.RequestException as e: + raise Exception(f"网络请求失败: {str(e)}") + except ValueError: + raise Exception("无效的 JSON 响应") + + # 处理微信接口错误 + if "errcode" in data: + raise Exception(f"微信接口错误 [{data['errcode']}]: {data['errmsg']}") + + # 验证响应数据 + if "access_token" not in data or "expires_in" not in data: + raise Exception("响应数据不完整") + + # 更新缓存信息(预留 5 秒缓冲时间防止临界点) + _access_token = data["access_token"] + _expires_time = time.time() + data["expires_in"] - 5 + _appid = appid + _secret = secret + print(f"Access Token 已更新: {_access_token},有效期至 {time.ctime(_expires_time)}") + + return _access_token \ No newline at end of file diff --git a/backend/config.conf b/backend/config.conf index b871e5c..7999752 100644 --- a/backend/config.conf +++ b/backend/config.conf @@ -1,8 +1,8 @@ [mysql] host = localhost -port = 3307 +port = 3306 user = root -password = mysql_YDnNkC +password = hzc03566 database = tg01 [jwt] @@ -18,4 +18,13 @@ appid = wx2c0e64b724b6dec4 secret = b5330aece22ce5cf5df3048cb28d1558 apiv3_key = 5PwbBrsZHxs6Krv7cFNyJdaQGJkGRaKA mchid = 1709464037 -cert_serial_no = 214EA0DFFD516E0E88BCBAD28D525D967C0FEF10 \ No newline at end of file +cert_serial_no = 214EA0DFFD516E0E88BCBAD28D525D967C0FEF10 + +[stay_up_late] +start_time = 22:00:00 +end_time = 07:00:00 +price_minutes = 5 + +[now_price] +strategy_id = 0 + diff --git a/demo.log b/demo.log index 49d147d..cd2ca65 100644 --- a/demo.log +++ b/demo.log @@ -530,3 +530,520 @@ Traceback (most recent call last): if not wxpay.verify(headers, body_bytes): ^^^^^^^^^^^^ AttributeError: 'WeChatPay' object has no attribute 'verify' +2025-03-17 02:11:22,535 - 9480 - DEBUG: /etc/localtime found +2025-03-17 02:11:22,536 - 9480 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 02:12:57,446 - 9529 - DEBUG: /etc/localtime found +2025-03-17 02:12:57,448 - 9529 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 02:37:07,753 - 9764 - DEBUG: /etc/localtime found +2025-03-17 02:37:07,754 - 9764 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 03:00:38,179 - 9924 - DEBUG: /etc/localtime found +2025-03-17 03:00:38,180 - 9924 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 04:22:49,491 - 13013 - DEBUG: /etc/localtime found +2025-03-17 04:22:49,492 - 13013 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 04:30:10,911 - 13013 - DEBUG: Request received. Product:Dysmsapi Endpoint:dysmsapi.aliyuncs.com Params: {'PhoneNumbers': '19510370888', 'SignName': '小鲨桌游吧', 'TemplateCode': 'SMS_480005109', 'TemplateParam': {'code': '4708'}, 'Version': '2017-05-25', 'Action': 'SendSms', 'Format': 'JSON'} +2025-03-17 04:30:11,461 - 13013 - DEBUG: Response received. Product:Dysmsapi Response-body: b'{"Message":"OK","RequestId":"F3A01BE3-DDB0-526A-82EC-A5311F936DAB","Code":"OK","BizId":"661508642157011199^0"}' +2025-03-17 04:33:13,314 - 14132 - DEBUG: /etc/localtime found +2025-03-17 04:33:13,316 - 14132 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 04:33:39,773 - 14143 - DEBUG: /etc/localtime found +2025-03-17 04:33:39,774 - 14143 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 04:34:03,964 - 14155 - DEBUG: /etc/localtime found +2025-03-17 04:34:03,965 - 14155 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 04:41:12,720 - 14255 - DEBUG: /etc/localtime found +2025-03-17 04:41:12,721 - 14255 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 04:53:30,595 - 14326 - DEBUG: /etc/localtime found +2025-03-17 04:53:30,596 - 14326 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 04:58:22,159 - 14370 - DEBUG: /etc/localtime found +2025-03-17 04:58:22,161 - 14370 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 04:59:22,838 - 14370 - DEBUG: Request received. Product:Dysmsapi Endpoint:dysmsapi.aliyuncs.com Params: {'PhoneNumbers': '18303518112', 'SignName': '小鲨桌游吧', 'TemplateCode': 'SMS_480005109', 'TemplateParam': {'code': '2352'}, 'Version': '2017-05-25', 'Action': 'SendSms', 'Format': 'JSON'} +2025-03-17 04:59:23,254 - 14370 - DEBUG: Response received. Product:Dysmsapi Response-body: b'{"Message":"OK","RequestId":"E5D97E05-20A3-5B03-AD54-3EE39160D8BE","Code":"OK","BizId":"156515342158763014^0"}' +2025-03-17 04:59:43,023 - 14370 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-17 04:59:43,321 - 14370 - DEBUG: https://api.weixin.qq.com:443 "GET /sns/jscode2session?appid=wx2c0e64b724b6dec4&secret=b5330aece22ce5cf5df3048cb28d1558&js_code=0e2af00w3GAiz437273w31kgyG1af00k&grant_type=authorization_code HTTP/1.1" 200 82 +2025-03-17 05:05:32,534 - 14438 - DEBUG: /etc/localtime found +2025-03-17 05:05:32,536 - 14438 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 05:09:20,129 - 14505 - DEBUG: /etc/localtime found +2025-03-17 05:09:20,130 - 14505 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 05:12:09,686 - 14566 - DEBUG: /etc/localtime found +2025-03-17 05:12:09,688 - 14566 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 13:05:48,237 - 15393 - DEBUG: /etc/localtime found +2025-03-17 13:05:48,238 - 15393 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 23:17:50,490 - 16526 - DEBUG: /etc/localtime found +2025-03-17 23:17:50,492 - 16526 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-17 23:29:27,515 - 16678 - DEBUG: /etc/localtime found +2025-03-17 23:29:27,516 - 16678 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 00:06:37,399 - 17160 - DEBUG: /etc/localtime found +2025-03-18 00:06:37,400 - 17160 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 00:20:26,436 - 17379 - DEBUG: /etc/localtime found +2025-03-18 00:20:26,438 - 17379 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 00:32:22,752 - 17578 - DEBUG: /etc/localtime found +2025-03-18 00:32:22,754 - 17578 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 00:38:50,792 - 17743 - DEBUG: /etc/localtime found +2025-03-18 00:38:50,794 - 17743 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 00:38:57,150 - 17755 - DEBUG: /etc/localtime found +2025-03-18 00:38:57,151 - 17755 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:00:25,036 - 18192 - DEBUG: /etc/localtime found +2025-03-18 01:00:25,037 - 18192 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:00:52,358 - 18222 - DEBUG: /etc/localtime found +2025-03-18 01:00:52,359 - 18222 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:01:48,272 - 18255 - DEBUG: /etc/localtime found +2025-03-18 01:01:48,274 - 18255 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:02:27,372 - 18283 - DEBUG: /etc/localtime found +2025-03-18 01:02:27,374 - 18283 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:03:00,245 - 18306 - DEBUG: /etc/localtime found +2025-03-18 01:03:00,246 - 18306 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:03:12,258 - 18322 - DEBUG: /etc/localtime found +2025-03-18 01:03:12,259 - 18322 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:05:24,615 - 18352 - DEBUG: /etc/localtime found +2025-03-18 01:05:24,616 - 18352 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:13:32,167 - 18462 - DEBUG: /etc/localtime found +2025-03-18 01:13:32,168 - 18462 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:14:57,401 - 18525 - DEBUG: /etc/localtime found +2025-03-18 01:14:57,403 - 18525 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:16:16,656 - 18577 - DEBUG: /etc/localtime found +2025-03-18 01:16:16,658 - 18577 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:18:18,977 - 18607 - DEBUG: /etc/localtime found +2025-03-18 01:18:18,978 - 18607 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:18:39,413 - 18628 - DEBUG: /etc/localtime found +2025-03-18 01:18:39,414 - 18628 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:20:53,177 - 18672 - DEBUG: /etc/localtime found +2025-03-18 01:20:53,178 - 18672 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:26:46,099 - 18770 - DEBUG: /etc/localtime found +2025-03-18 01:26:46,100 - 18770 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:27:34,235 - 18807 - DEBUG: /etc/localtime found +2025-03-18 01:27:34,236 - 18807 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 01:28:02,653 - 18836 - DEBUG: /etc/localtime found +2025-03-18 01:28:02,654 - 18836 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 09:52:32,035 - 19795 - DEBUG: /etc/localtime found +2025-03-18 09:52:32,037 - 19795 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 10:42:36,848 - 20509 - DEBUG: /etc/localtime found +2025-03-18 10:42:36,850 - 20509 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 10:56:54,711 - 20509 - DEBUG: Request received. Product:Dysmsapi Endpoint:dysmsapi.aliyuncs.com Params: {'PhoneNumbers': '19510370888', 'SignName': '小鲨桌游吧', 'TemplateCode': 'SMS_480005109', 'TemplateParam': {'code': '2087'}, 'Version': '2017-05-25', 'Action': 'SendSms', 'Format': 'JSON'} +2025-03-18 10:56:55,145 - 20509 - DEBUG: Response received. Product:Dysmsapi Response-body: b'{"Message":"OK","RequestId":"96B9404B-60DF-5051-9718-1AB6C5EB24D6","Code":"OK","BizId":"378121742266615002^0"}' +2025-03-18 11:05:35,168 - 20884 - DEBUG: /etc/localtime found +2025-03-18 11:05:35,169 - 20884 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 11:23:02,541 - 21054 - DEBUG: /etc/localtime found +2025-03-18 11:23:02,543 - 21054 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 11:25:16,447 - 21094 - DEBUG: /etc/localtime found +2025-03-18 11:25:16,448 - 21094 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 11:26:53,592 - 21191 - DEBUG: /etc/localtime found +2025-03-18 11:26:53,593 - 21191 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 11:27:28,550 - 21218 - DEBUG: /etc/localtime found +2025-03-18 11:27:28,551 - 21218 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 11:27:46,386 - 21230 - DEBUG: /etc/localtime found +2025-03-18 11:27:46,387 - 21230 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 13:29:25,762 - 22365 - DEBUG: /etc/localtime found +2025-03-18 13:29:25,764 - 22365 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-18 13:32:06,210 - 22497 - DEBUG: /etc/localtime found +2025-03-18 13:32:06,211 - 22497 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-19 23:36:26,129 - 41266 - DEBUG: /etc/localtime found +2025-03-19 23:36:26,130 - 41266 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-19 23:38:30,994 - 41309 - DEBUG: /etc/localtime found +2025-03-19 23:38:30,995 - 41309 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-19 23:43:15,873 - 41361 - DEBUG: /etc/localtime found +2025-03-19 23:43:15,874 - 41361 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-19 23:45:44,932 - 41397 - DEBUG: /etc/localtime found +2025-03-19 23:45:44,933 - 41397 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:20:30,587 - 41633 - DEBUG: /etc/localtime found +2025-03-20 00:20:30,588 - 41633 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:28:04,694 - 41757 - DEBUG: /etc/localtime found +2025-03-20 00:28:04,696 - 41757 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:32:32,969 - 41801 - DEBUG: /etc/localtime found +2025-03-20 00:32:32,971 - 41801 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:32:57,395 - 41821 - DEBUG: /etc/localtime found +2025-03-20 00:32:57,396 - 41821 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:33:52,983 - 41838 - DEBUG: /etc/localtime found +2025-03-20 00:33:52,984 - 41838 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:36:31,114 - 41876 - DEBUG: /etc/localtime found +2025-03-20 00:36:31,116 - 41876 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:37:11,673 - 41896 - DEBUG: /etc/localtime found +2025-03-20 00:37:11,674 - 41896 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:38:42,768 - 41916 - DEBUG: /etc/localtime found +2025-03-20 00:38:42,769 - 41916 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:39:30,595 - 41930 - DEBUG: /etc/localtime found +2025-03-20 00:39:30,596 - 41930 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:40:28,519 - 41950 - DEBUG: /etc/localtime found +2025-03-20 00:40:28,520 - 41950 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:47:18,407 - 42003 - DEBUG: /etc/localtime found +2025-03-20 00:47:18,409 - 42003 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:47:24,920 - 42029 - DEBUG: /etc/localtime found +2025-03-20 00:47:24,920 - 42029 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:49:05,692 - 42043 - DEBUG: /etc/localtime found +2025-03-20 00:49:05,694 - 42043 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:49:50,475 - 42067 - DEBUG: /etc/localtime found +2025-03-20 00:49:50,476 - 42067 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:50:12,070 - 42083 - DEBUG: /etc/localtime found +2025-03-20 00:50:12,071 - 42083 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 00:51:08,564 - 42107 - DEBUG: /etc/localtime found +2025-03-20 00:51:08,566 - 42107 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 01:12:22,568 - 42375 - DEBUG: /etc/localtime found +2025-03-20 01:12:22,569 - 42375 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 01:13:44,170 - 42392 - DEBUG: /etc/localtime found +2025-03-20 01:13:44,171 - 42392 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 01:14:16,734 - 42415 - DEBUG: /etc/localtime found +2025-03-20 01:14:16,735 - 42415 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 01:24:52,019 - 42572 - DEBUG: /etc/localtime found +2025-03-20 01:24:52,021 - 42572 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 03:23:05,397 - 42804 - DEBUG: /etc/localtime found +2025-03-20 03:23:05,398 - 42804 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 03:23:07,262 - 42829 - DEBUG: /etc/localtime found +2025-03-20 03:23:07,262 - 42829 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 03:23:27,666 - 42864 - DEBUG: /etc/localtime found +2025-03-20 03:23:27,667 - 42864 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 03:42:07,808 - 43010 - DEBUG: /etc/localtime found +2025-03-20 03:42:07,809 - 43010 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 03:44:21,423 - 43064 - DEBUG: /etc/localtime found +2025-03-20 03:44:21,424 - 43064 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 03:56:22,618 - 43177 - DEBUG: /etc/localtime found +2025-03-20 03:56:22,620 - 43177 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 03:59:58,440 - 43261 - DEBUG: /etc/localtime found +2025-03-20 03:59:58,441 - 43261 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 04:03:01,577 - 43304 - DEBUG: /etc/localtime found +2025-03-20 04:03:01,578 - 43304 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 04:14:32,416 - 43393 - DEBUG: /etc/localtime found +2025-03-20 04:14:32,417 - 43393 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 04:16:29,404 - 43431 - DEBUG: /etc/localtime found +2025-03-20 04:16:29,405 - 43431 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 04:17:32,371 - 43461 - DEBUG: /etc/localtime found +2025-03-20 04:17:32,373 - 43461 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 04:19:20,400 - 43500 - DEBUG: /etc/localtime found +2025-03-20 04:19:20,401 - 43500 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 04:29:59,890 - 43677 - DEBUG: /etc/localtime found +2025-03-20 04:29:59,892 - 43677 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 04:30:59,012 - 43677 - DEBUG: Request received. Product:Dysmsapi Endpoint:dysmsapi.aliyuncs.com Params: {'PhoneNumbers': '19510370888', 'SignName': '小鲨桌游吧', 'TemplateCode': 'SMS_480005109', 'TemplateParam': {'code': '3824'}, 'Version': '2017-05-25', 'Action': 'SendSms', 'Format': 'JSON'} +2025-03-20 04:30:59,535 - 43677 - DEBUG: Response received. Product:Dysmsapi Response-body: b'{"Message":"OK","RequestId":"9C1E2AB0-B0F6-5681-92C3-2C77E3947E5A","Code":"OK","BizId":"960725042416259275^0"}' +2025-03-20 04:31:37,567 - 43677 - DEBUG: Request received. Product:Dysmsapi Endpoint:dysmsapi.aliyuncs.com Params: {'PhoneNumbers': '18653858636', 'SignName': '小鲨桌游吧', 'TemplateCode': 'SMS_480005109', 'TemplateParam': {'code': '0486'}, 'Version': '2017-05-25', 'Action': 'SendSms', 'Format': 'JSON'} +2025-03-20 04:31:37,800 - 43677 - DEBUG: Response received. Product:Dysmsapi Response-body: b'{"Message":"OK","RequestId":"934C57A3-F36E-5032-8635-3ABBB96B87BE","Code":"OK","BizId":"770218642416297812^0"}' +2025-03-20 04:32:34,484 - 43677 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-20 04:32:34,913 - 43677 - DEBUG: https://api.weixin.qq.com:443 "GET /sns/jscode2session?appid=wx2c0e64b724b6dec4&secret=b5330aece22ce5cf5df3048cb28d1558&js_code=0b2dXMkl2hMLff4qWiml270TeM1dXMkC&grant_type=authorization_code HTTP/1.1" 200 82 +2025-03-20 13:18:12,607 - 59647 - DEBUG: /etc/localtime found +2025-03-20 13:18:12,609 - 59647 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 13:31:41,705 - 59917 - DEBUG: /etc/localtime found +2025-03-20 13:31:41,706 - 59917 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 13:31:51,078 - 59936 - DEBUG: /etc/localtime found +2025-03-20 13:31:51,079 - 59936 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-20 13:38:29,211 - 60065 - DEBUG: /etc/localtime found +2025-03-20 13:38:29,212 - 60065 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 16:53:45,147 - 68107 - DEBUG: /etc/localtime found +2025-03-21 16:53:45,149 - 68107 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:03:12,138 - 68353 - DEBUG: /etc/localtime found +2025-03-21 17:03:12,141 - 68353 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:06:24,448 - 68429 - DEBUG: /etc/localtime found +2025-03-21 17:06:24,449 - 68429 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:18:08,803 - 68567 - DEBUG: /etc/localtime found +2025-03-21 17:18:08,804 - 68567 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:18:39,749 - 68601 - DEBUG: /etc/localtime found +2025-03-21 17:18:39,750 - 68601 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:21:32,505 - 68666 - DEBUG: /etc/localtime found +2025-03-21 17:21:32,506 - 68666 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:22:33,421 - 68743 - DEBUG: /etc/localtime found +2025-03-21 17:22:33,422 - 68743 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:22:38,111 - 68746 - DEBUG: /etc/localtime found +2025-03-21 17:22:38,112 - 68746 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:22:41,454 - 68756 - DEBUG: /etc/localtime found +2025-03-21 17:22:41,455 - 68756 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:23:15,836 - 68796 - DEBUG: /etc/localtime found +2025-03-21 17:23:15,837 - 68796 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:34:20,613 - 69034 - DEBUG: /etc/localtime found +2025-03-21 17:34:20,614 - 69034 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:34:40,718 - 69041 - DEBUG: /etc/localtime found +2025-03-21 17:34:40,719 - 69041 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:35:53,761 - 69051 - DEBUG: /etc/localtime found +2025-03-21 17:35:53,762 - 69051 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:35:58,218 - 69060 - DEBUG: /etc/localtime found +2025-03-21 17:35:58,218 - 69060 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:36:06,731 - 69063 - DEBUG: /etc/localtime found +2025-03-21 17:36:06,732 - 69063 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 17:36:20,301 - 69068 - DEBUG: /etc/localtime found +2025-03-21 17:36:20,302 - 69068 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 18:08:24,211 - 69564 - DEBUG: /etc/localtime found +2025-03-21 18:08:24,212 - 69564 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 18:09:33,070 - 69655 - DEBUG: /etc/localtime found +2025-03-21 18:09:33,071 - 69655 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 18:16:03,076 - 69837 - DEBUG: /etc/localtime found +2025-03-21 18:16:03,078 - 69837 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 18:17:30,496 - 69877 - DEBUG: /etc/localtime found +2025-03-21 18:17:30,497 - 69877 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 18:18:08,384 - 69891 - DEBUG: /etc/localtime found +2025-03-21 18:18:08,385 - 69891 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-21 18:18:33,092 - 69897 - DEBUG: /etc/localtime found +2025-03-21 18:18:33,093 - 69897 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-27 02:09:13,495 - 792 - DEBUG: /etc/localtime found +2025-03-27 02:09:13,497 - 792 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-27 02:12:21,658 - 1013 - DEBUG: /etc/localtime found +2025-03-27 02:12:21,659 - 1013 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-27 02:12:34,825 - 1035 - DEBUG: /etc/localtime found +2025-03-27 02:12:34,826 - 1035 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-27 02:12:36,892 - 1035 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:12:37,094 - 1035 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=%3Cmodule+%27backend.app.utils.get_accesstoken%27+from+%27%2FUsers%2Fhaochen%2FPycharmProjects%2Ftable_game%2Fbackend%2Fapp%2Futils%2Fget_accesstoken.py%27%3E HTTP/1.1" 200 215 +2025-03-27 02:13:32,106 - 1070 - DEBUG: /etc/localtime found +2025-03-27 02:13:32,107 - 1070 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-27 02:13:45,347 - 1078 - DEBUG: /etc/localtime found +2025-03-27 02:13:45,347 - 1078 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-27 02:14:04,102 - 1078 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:14:04,307 - 1078 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=%3Cmodule+%27backend.app.utils.get_accesstoken%27+from+%27%2FUsers%2Fhaochen%2FPycharmProjects%2Ftable_game%2Fbackend%2Fapp%2Futils%2Fget_accesstoken.py%27%3E HTTP/1.1" 200 215 +2025-03-27 02:18:24,247 - 1212 - DEBUG: /etc/localtime found +2025-03-27 02:18:24,248 - 1212 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-27 02:20:22,434 - 1281 - DEBUG: /etc/localtime found +2025-03-27 02:20:22,435 - 1281 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-27 02:23:25,902 - 1300 - DEBUG: /etc/localtime found +2025-03-27 02:23:25,903 - 1300 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-27 02:23:33,316 - 1300 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:23:33,728 - 1300 - DEBUG: https://api.weixin.qq.com:443 "GET /cgi-bin/token?grant_type=client_credential&appid=wx2c0e64b724b6dec4&secret=b5330aece22ce5cf5df3048cb28d1558 HTTP/1.1" 200 173 +2025-03-27 02:23:33,734 - 1300 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:23:34,028 - 1300 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_XJaFkAiliWqAom6POcScHO0BjLWTd5bpmSXCqSS3zrW0Q06U8yuFlYFs2vjR7xGcL8WSolPRBqvppwC4q0qxU77lB1x9JUp7zJWiNMm_FtG71gHPzN4bAdXDe70UKVdAEAXNY HTTP/1.1" 200 98 +2025-03-27 02:26:16,408 - 1300 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:26:16,695 - 1300 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_XJaFkAiliWqAom6POcScHO0BjLWTd5bpmSXCqSS3zrW0Q06U8yuFlYFs2vjR7xGcL8WSolPRBqvppwC4q0qxU77lB1x9JUp7zJWiNMm_FtG71gHPzN4bAdXDe70UKVdAEAXNY HTTP/1.1" 200 187 +2025-03-27 02:29:47,804 - 1300 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:29:48,107 - 1300 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_XJaFkAiliWqAom6POcScHO0BjLWTd5bpmSXCqSS3zrW0Q06U8yuFlYFs2vjR7xGcL8WSolPRBqvppwC4q0qxU77lB1x9JUp7zJWiNMm_FtG71gHPzN4bAdXDe70UKVdAEAXNY HTTP/1.1" 200 186 +2025-03-27 02:35:11,179 - 1300 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:35:11,489 - 1300 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_XJaFkAiliWqAom6POcScHO0BjLWTd5bpmSXCqSS3zrW0Q06U8yuFlYFs2vjR7xGcL8WSolPRBqvppwC4q0qxU77lB1x9JUp7zJWiNMm_FtG71gHPzN4bAdXDe70UKVdAEAXNY HTTP/1.1" 200 186 +2025-03-27 02:37:23,845 - 1300 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:37:24,124 - 1300 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_XJaFkAiliWqAom6POcScHO0BjLWTd5bpmSXCqSS3zrW0Q06U8yuFlYFs2vjR7xGcL8WSolPRBqvppwC4q0qxU77lB1x9JUp7zJWiNMm_FtG71gHPzN4bAdXDe70UKVdAEAXNY HTTP/1.1" 200 186 +2025-03-27 02:46:41,079 - 1300 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:46:41,394 - 1300 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_XJaFkAiliWqAom6POcScHO0BjLWTd5bpmSXCqSS3zrW0Q06U8yuFlYFs2vjR7xGcL8WSolPRBqvppwC4q0qxU77lB1x9JUp7zJWiNMm_FtG71gHPzN4bAdXDe70UKVdAEAXNY HTTP/1.1" 200 186 +2025-03-27 02:48:29,522 - 1679 - DEBUG: /etc/localtime found +2025-03-27 02:48:29,524 - 1679 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-27 02:48:48,218 - 1679 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:48:48,559 - 1679 - DEBUG: https://api.weixin.qq.com:443 "GET /cgi-bin/token?grant_type=client_credential&appid=wx2c0e64b724b6dec4&secret=b5330aece22ce5cf5df3048cb28d1558 HTTP/1.1" 200 173 +2025-03-27 02:48:48,564 - 1679 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:48:48,844 - 1679 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_7RiorMA1un-tZMY8k8STC0WOdTuDbtUOFtTKjXOrux6RimvR8029Oz5ZqAF1eGlzwJh-ofUkYpgrz-npH85WO0JvVST0yHQhuCmcwAK9IP59QubtM5j0YRe7IFYJIUeAIAVUG HTTP/1.1" 200 186 +2025-03-27 02:50:49,975 - 1679 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:50:50,260 - 1679 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_7RiorMA1un-tZMY8k8STC0WOdTuDbtUOFtTKjXOrux6RimvR8029Oz5ZqAF1eGlzwJh-ofUkYpgrz-npH85WO0JvVST0yHQhuCmcwAK9IP59QubtM5j0YRe7IFYJIUeAIAVUG HTTP/1.1" 200 186 +2025-03-27 02:54:58,293 - 1679 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:54:58,601 - 1679 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_7RiorMA1un-tZMY8k8STC0WOdTuDbtUOFtTKjXOrux6RimvR8029Oz5ZqAF1eGlzwJh-ofUkYpgrz-npH85WO0JvVST0yHQhuCmcwAK9IP59QubtM5j0YRe7IFYJIUeAIAVUG HTTP/1.1" 200 186 +2025-03-27 02:56:04,931 - 1679 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:56:05,237 - 1679 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_7RiorMA1un-tZMY8k8STC0WOdTuDbtUOFtTKjXOrux6RimvR8029Oz5ZqAF1eGlzwJh-ofUkYpgrz-npH85WO0JvVST0yHQhuCmcwAK9IP59QubtM5j0YRe7IFYJIUeAIAVUG HTTP/1.1" 200 186 +2025-03-27 02:57:28,645 - 1679 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:57:29,031 - 1679 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_7RiorMA1un-tZMY8k8STC0WOdTuDbtUOFtTKjXOrux6RimvR8029Oz5ZqAF1eGlzwJh-ofUkYpgrz-npH85WO0JvVST0yHQhuCmcwAK9IP59QubtM5j0YRe7IFYJIUeAIAVUG HTTP/1.1" 200 186 +2025-03-27 02:58:05,903 - 1679 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:58:06,192 - 1679 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_7RiorMA1un-tZMY8k8STC0WOdTuDbtUOFtTKjXOrux6RimvR8029Oz5ZqAF1eGlzwJh-ofUkYpgrz-npH85WO0JvVST0yHQhuCmcwAK9IP59QubtM5j0YRe7IFYJIUeAIAVUG HTTP/1.1" 200 186 +2025-03-27 02:59:45,033 - 1679 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 02:59:45,310 - 1679 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_7RiorMA1un-tZMY8k8STC0WOdTuDbtUOFtTKjXOrux6RimvR8029Oz5ZqAF1eGlzwJh-ofUkYpgrz-npH85WO0JvVST0yHQhuCmcwAK9IP59QubtM5j0YRe7IFYJIUeAIAVUG HTTP/1.1" 200 186 +2025-03-27 03:01:10,968 - 1679 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 03:01:11,253 - 1679 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_7RiorMA1un-tZMY8k8STC0WOdTuDbtUOFtTKjXOrux6RimvR8029Oz5ZqAF1eGlzwJh-ofUkYpgrz-npH85WO0JvVST0yHQhuCmcwAK9IP59QubtM5j0YRe7IFYJIUeAIAVUG HTTP/1.1" 200 186 +2025-03-27 03:05:51,956 - 1679 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 03:05:52,266 - 1679 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_7RiorMA1un-tZMY8k8STC0WOdTuDbtUOFtTKjXOrux6RimvR8029Oz5ZqAF1eGlzwJh-ofUkYpgrz-npH85WO0JvVST0yHQhuCmcwAK9IP59QubtM5j0YRe7IFYJIUeAIAVUG HTTP/1.1" 200 186 +2025-03-27 03:06:26,836 - 1679 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-27 03:06:27,155 - 1679 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_7RiorMA1un-tZMY8k8STC0WOdTuDbtUOFtTKjXOrux6RimvR8029Oz5ZqAF1eGlzwJh-ofUkYpgrz-npH85WO0JvVST0yHQhuCmcwAK9IP59QubtM5j0YRe7IFYJIUeAIAVUG HTTP/1.1" 200 186 +2025-03-28 01:07:01,629 - 13588 - DEBUG: /etc/localtime found +2025-03-28 01:07:01,630 - 13588 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 01:07:32,399 - 13588 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 01:07:32,829 - 13588 - DEBUG: https://api.weixin.qq.com:443 "GET /cgi-bin/token?grant_type=client_credential&appid=wx2c0e64b724b6dec4&secret=b5330aece22ce5cf5df3048cb28d1558 HTTP/1.1" 200 173 +2025-03-28 01:07:32,836 - 13588 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 01:07:33,187 - 13588 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_0I47KJdSR_ktAK8DDN2za4MqAmH9CjXkhKMh_OZlwNURQN2F378dPUHPEJPVSglpgzglQi1FdF6YLfj0tDKJPMbjC_Zi_WQMnnIdCXZSb_Kq_zi32WhRjv7_6Y4RJCbAJAVNG HTTP/1.1" 200 186 +2025-03-28 01:09:02,707 - 13588 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 01:09:02,951 - 13588 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_0I47KJdSR_ktAK8DDN2za4MqAmH9CjXkhKMh_OZlwNURQN2F378dPUHPEJPVSglpgzglQi1FdF6YLfj0tDKJPMbjC_Zi_WQMnnIdCXZSb_Kq_zi32WhRjv7_6Y4RJCbAJAVNG HTTP/1.1" 200 186 +2025-03-28 01:41:10,176 - 13588 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 01:41:10,473 - 13588 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_0I47KJdSR_ktAK8DDN2za4MqAmH9CjXkhKMh_OZlwNURQN2F378dPUHPEJPVSglpgzglQi1FdF6YLfj0tDKJPMbjC_Zi_WQMnnIdCXZSb_Kq_zi32WhRjv7_6Y4RJCbAJAVNG HTTP/1.1" 200 186 +2025-03-28 01:44:58,682 - 13588 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 01:44:58,967 - 13588 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_0I47KJdSR_ktAK8DDN2za4MqAmH9CjXkhKMh_OZlwNURQN2F378dPUHPEJPVSglpgzglQi1FdF6YLfj0tDKJPMbjC_Zi_WQMnnIdCXZSb_Kq_zi32WhRjv7_6Y4RJCbAJAVNG HTTP/1.1" 200 186 +2025-03-28 01:45:36,192 - 13588 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 01:45:36,512 - 13588 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_0I47KJdSR_ktAK8DDN2za4MqAmH9CjXkhKMh_OZlwNURQN2F378dPUHPEJPVSglpgzglQi1FdF6YLfj0tDKJPMbjC_Zi_WQMnnIdCXZSb_Kq_zi32WhRjv7_6Y4RJCbAJAVNG HTTP/1.1" 200 186 +2025-03-28 01:45:41,994 - 13588 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 01:45:42,281 - 13588 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_0I47KJdSR_ktAK8DDN2za4MqAmH9CjXkhKMh_OZlwNURQN2F378dPUHPEJPVSglpgzglQi1FdF6YLfj0tDKJPMbjC_Zi_WQMnnIdCXZSb_Kq_zi32WhRjv7_6Y4RJCbAJAVNG HTTP/1.1" 200 186 +2025-03-28 01:47:10,692 - 13588 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 01:47:10,986 - 13588 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_0I47KJdSR_ktAK8DDN2za4MqAmH9CjXkhKMh_OZlwNURQN2F378dPUHPEJPVSglpgzglQi1FdF6YLfj0tDKJPMbjC_Zi_WQMnnIdCXZSb_Kq_zi32WhRjv7_6Y4RJCbAJAVNG HTTP/1.1" 200 186 +2025-03-28 01:48:41,476 - 14133 - DEBUG: /etc/localtime found +2025-03-28 01:48:41,477 - 14133 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 01:50:36,088 - 14133 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 01:50:36,456 - 14133 - DEBUG: https://api.weixin.qq.com:443 "GET /cgi-bin/token?grant_type=client_credential&appid=wx2c0e64b724b6dec4&secret=b5330aece22ce5cf5df3048cb28d1558 HTTP/1.1" 200 173 +2025-03-28 01:50:36,462 - 14133 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 01:50:36,775 - 14133 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_L4xQmNB4ScQP3wGTOWtbA-oDbPzjcvbEqnnxhiNKzaszRaciY-avGkPaTagZNM_K3gBpYSZw9dIyukc5OKJrQCwXOk32nRaPXYC5vSikWjaf5hhezxMezjA2WZgDBKiAGAIGP HTTP/1.1" 200 187 +2025-03-28 01:52:14,394 - 14133 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 01:52:14,698 - 14133 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_L4xQmNB4ScQP3wGTOWtbA-oDbPzjcvbEqnnxhiNKzaszRaciY-avGkPaTagZNM_K3gBpYSZw9dIyukc5OKJrQCwXOk32nRaPXYC5vSikWjaf5hhezxMezjA2WZgDBKiAGAIGP HTTP/1.1" 200 187 +2025-03-28 01:56:52,531 - 14261 - DEBUG: /etc/localtime found +2025-03-28 01:56:52,533 - 14261 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 02:03:19,858 - 14392 - DEBUG: /etc/localtime found +2025-03-28 02:03:19,859 - 14392 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 02:14:56,123 - 14392 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 02:14:56,508 - 14392 - DEBUG: https://api.weixin.qq.com:443 "GET /cgi-bin/token?grant_type=client_credential&appid=wx2c0e64b724b6dec4&secret=b5330aece22ce5cf5df3048cb28d1558 HTTP/1.1" 200 173 +2025-03-28 02:14:56,513 - 14392 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 02:14:56,842 - 14392 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_vYSxeMzk5VftDLq4s_yuvhwnQMamKgwYUd146AGdKdh5N808r-5WJhEsqEbU2GZDmSIRLQ4wRe44jsiF00TKmvSGo09FIHhm54TcxVKLrd_firczp-kMaYY7m9UNPKcAGAZBW HTTP/1.1" 200 187 +2025-03-28 02:37:42,313 - 14392 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 02:37:42,651 - 14392 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_vYSxeMzk5VftDLq4s_yuvhwnQMamKgwYUd146AGdKdh5N808r-5WJhEsqEbU2GZDmSIRLQ4wRe44jsiF00TKmvSGo09FIHhm54TcxVKLrd_firczp-kMaYY7m9UNPKcAGAZBW HTTP/1.1" 200 187 +2025-03-28 02:46:54,907 - 14392 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 02:46:55,184 - 14392 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_vYSxeMzk5VftDLq4s_yuvhwnQMamKgwYUd146AGdKdh5N808r-5WJhEsqEbU2GZDmSIRLQ4wRe44jsiF00TKmvSGo09FIHhm54TcxVKLrd_firczp-kMaYY7m9UNPKcAGAZBW HTTP/1.1" 200 187 +2025-03-28 02:48:30,307 - 16482 - DEBUG: /etc/localtime found +2025-03-28 02:48:30,312 - 16482 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 02:48:43,813 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 02:48:44,254 - 16482 - DEBUG: https://api.weixin.qq.com:443 "GET /cgi-bin/token?grant_type=client_credential&appid=wx2c0e64b724b6dec4&secret=b5330aece22ce5cf5df3048cb28d1558 HTTP/1.1" 200 173 +2025-03-28 02:48:44,259 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 02:48:44,601 - 16482 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_tqKj3iQ5Va-PSwqtgb6ixRBdPrNDAkiBXg0UQFSMqxeyIjAz5KZsSIUh0SPaAfnQht__hcmzUxfLwM2g-VcMpEUJuvkGvcLF0SlM9eippKsTNOdYDktxk0zF3lUAXUaAIATQN HTTP/1.1" 200 187 +2025-03-28 02:51:52,554 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 02:51:52,855 - 16482 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_tqKj3iQ5Va-PSwqtgb6ixRBdPrNDAkiBXg0UQFSMqxeyIjAz5KZsSIUh0SPaAfnQht__hcmzUxfLwM2g-VcMpEUJuvkGvcLF0SlM9eippKsTNOdYDktxk0zF3lUAXUaAIATQN HTTP/1.1" 200 187 +2025-03-28 02:55:38,132 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 02:55:38,485 - 16482 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_tqKj3iQ5Va-PSwqtgb6ixRBdPrNDAkiBXg0UQFSMqxeyIjAz5KZsSIUh0SPaAfnQht__hcmzUxfLwM2g-VcMpEUJuvkGvcLF0SlM9eippKsTNOdYDktxk0zF3lUAXUaAIATQN HTTP/1.1" 200 187 +2025-03-28 02:56:25,701 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 02:56:26,009 - 16482 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_tqKj3iQ5Va-PSwqtgb6ixRBdPrNDAkiBXg0UQFSMqxeyIjAz5KZsSIUh0SPaAfnQht__hcmzUxfLwM2g-VcMpEUJuvkGvcLF0SlM9eippKsTNOdYDktxk0zF3lUAXUaAIATQN HTTP/1.1" 200 187 +2025-03-28 03:44:08,806 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 03:44:09,142 - 16482 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_tqKj3iQ5Va-PSwqtgb6ixRBdPrNDAkiBXg0UQFSMqxeyIjAz5KZsSIUh0SPaAfnQht__hcmzUxfLwM2g-VcMpEUJuvkGvcLF0SlM9eippKsTNOdYDktxk0zF3lUAXUaAIATQN HTTP/1.1" 200 187 +2025-03-28 03:57:20,281 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 03:57:20,633 - 16482 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_tqKj3iQ5Va-PSwqtgb6ixRBdPrNDAkiBXg0UQFSMqxeyIjAz5KZsSIUh0SPaAfnQht__hcmzUxfLwM2g-VcMpEUJuvkGvcLF0SlM9eippKsTNOdYDktxk0zF3lUAXUaAIATQN HTTP/1.1" 200 187 +2025-03-28 04:00:48,271 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 04:00:48,611 - 16482 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_tqKj3iQ5Va-PSwqtgb6ixRBdPrNDAkiBXg0UQFSMqxeyIjAz5KZsSIUh0SPaAfnQht__hcmzUxfLwM2g-VcMpEUJuvkGvcLF0SlM9eippKsTNOdYDktxk0zF3lUAXUaAIATQN HTTP/1.1" 200 187 +2025-03-28 04:02:02,595 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 04:02:02,934 - 16482 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_tqKj3iQ5Va-PSwqtgb6ixRBdPrNDAkiBXg0UQFSMqxeyIjAz5KZsSIUh0SPaAfnQht__hcmzUxfLwM2g-VcMpEUJuvkGvcLF0SlM9eippKsTNOdYDktxk0zF3lUAXUaAIATQN HTTP/1.1" 200 187 +2025-03-28 04:02:56,411 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 04:02:56,696 - 16482 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_tqKj3iQ5Va-PSwqtgb6ixRBdPrNDAkiBXg0UQFSMqxeyIjAz5KZsSIUh0SPaAfnQht__hcmzUxfLwM2g-VcMpEUJuvkGvcLF0SlM9eippKsTNOdYDktxk0zF3lUAXUaAIATQN HTTP/1.1" 200 187 +2025-03-28 04:04:32,454 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 04:04:32,791 - 16482 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_tqKj3iQ5Va-PSwqtgb6ixRBdPrNDAkiBXg0UQFSMqxeyIjAz5KZsSIUh0SPaAfnQht__hcmzUxfLwM2g-VcMpEUJuvkGvcLF0SlM9eippKsTNOdYDktxk0zF3lUAXUaAIATQN HTTP/1.1" 200 187 +2025-03-28 04:04:33,498 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 04:04:33,827 - 16482 - DEBUG: https://api.weixin.qq.com:443 "GET /sns/jscode2session?appid=wx2c0e64b724b6dec4&secret=b5330aece22ce5cf5df3048cb28d1558&js_code=0c3l2c000MCJXT1JtM1002Rz3z2l2c07&grant_type=authorization_code HTTP/1.1" 200 82 +2025-03-28 04:05:47,651 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 04:05:47,961 - 16482 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_tqKj3iQ5Va-PSwqtgb6ixRBdPrNDAkiBXg0UQFSMqxeyIjAz5KZsSIUh0SPaAfnQht__hcmzUxfLwM2g-VcMpEUJuvkGvcLF0SlM9eippKsTNOdYDktxk0zF3lUAXUaAIATQN HTTP/1.1" 200 187 +2025-03-28 04:05:48,641 - 16482 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 04:05:48,978 - 16482 - DEBUG: https://api.weixin.qq.com:443 "GET /sns/jscode2session?appid=wx2c0e64b724b6dec4&secret=b5330aece22ce5cf5df3048cb28d1558&js_code=0f3D080w3PQ2D43ndB2w3INedW3D080m&grant_type=authorization_code HTTP/1.1" 200 82 +2025-03-28 04:12:59,361 - 16482 - DEBUG: Request received. Product:Dysmsapi Endpoint:dysmsapi.aliyuncs.com Params: {'PhoneNumbers': '19510370888', 'SignName': '小鲨桌游吧', 'TemplateCode': 'SMS_480005109', 'TemplateParam': {'code': '9908'}, 'Version': '2017-05-25', 'Action': 'SendSms', 'Format': 'JSON'} +2025-03-28 04:12:59,787 - 16482 - DEBUG: Response received. Product:Dysmsapi Response-body: b'{"Message":"OK","RequestId":"04E49A9F-9F4B-5520-B6AA-C8669B54FDD6","Code":"OK","BizId":"776118643106379645^0"}' +2025-03-28 05:33:12,509 - 19557 - DEBUG: /etc/localtime found +2025-03-28 05:33:12,511 - 19557 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 05:33:27,622 - 19576 - DEBUG: /etc/localtime found +2025-03-28 05:33:27,623 - 19576 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 05:34:20,309 - 19586 - DEBUG: /etc/localtime found +2025-03-28 05:34:20,310 - 19586 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 05:38:45,283 - 19654 - DEBUG: /etc/localtime found +2025-03-28 05:38:45,284 - 19654 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 05:39:42,820 - 19673 - DEBUG: /etc/localtime found +2025-03-28 05:39:42,822 - 19673 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 05:39:56,478 - 19688 - DEBUG: /etc/localtime found +2025-03-28 05:39:56,479 - 19688 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 05:43:08,971 - 19720 - DEBUG: /etc/localtime found +2025-03-28 05:43:08,972 - 19720 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 05:43:57,005 - 19737 - DEBUG: /etc/localtime found +2025-03-28 05:43:57,007 - 19737 - DEBUG: 1 found: + {'/etc/localtime is a symlink to': 'Asia/Shanghai'} +2025-03-28 06:08:18,684 - 19737 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 06:08:19,100 - 19737 - DEBUG: https://api.weixin.qq.com:443 "GET /cgi-bin/token?grant_type=client_credential&appid=wx2c0e64b724b6dec4&secret=b5330aece22ce5cf5df3048cb28d1558 HTTP/1.1" 200 173 +2025-03-28 06:08:19,105 - 19737 - DEBUG: Starting new HTTPS connection (1): api.weixin.qq.com:443 +2025-03-28 06:08:19,420 - 19737 - DEBUG: https://api.weixin.qq.com:443 "POST /wxa/business/getuserphonenumber?access_token=90_x4oBuwaapPBv3l90cJ9GNFpZ2RtTV9T0Yq4bygatCByy7oc2ncKO9GhOHxx6KhjEm5o7gxwlsvXT44kLMB8H1qlz3qVaXY8MhMvl4USZcCxIUTsTxF2Wi9G55bcMMBcAGADDS HTTP/1.1" 200 187