xjy
|
ce83bc24bd
|
fix: 修复站点Cookie处理的两个关键问题
本次提交修复了PT站点搜索功能失败的两个根本原因:
1. **Cookie URL解码问题**
- 问题:数据库中存储的Cookie值包含URL编码(如%3D、%2B、%2F),
但cookie_parse()函数未进行解码
- 影响:所有使用URL编码Cookie的站点可能无法正常登录
- 修复:在app/utils/http.py的cookie_parse()中添加unquote()解码
2. **httpx Cookie jar覆盖问题**(关键)
- 问题:httpx.AsyncClient的Cookie jar机制会自动保存服务器返回的
Set-Cookie,并在后续请求中覆盖我们传入的Cookie
- 表现:传入正确的c_secure_uid/c_secure_pass,实际发送的却是
PHPSESSID等错误Cookie
- 修复:在创建AsyncClient时传入Cookie,而不是在request()时传入
修改文件:
- app/utils/http.py: cookie_parse()添加URL解码 + AsyncClient传入cookies
- app/modules/indexer/spider/__init__.py: 清理调试代码
测试验证:
- ✅ pterclub 搜索功能恢复正常
- ✅ 春天站点搜索功能正常(验证通用性)
|
2026-01-13 09:29:05 +08:00 |
|