update: App 与桌面端接口头和参数差异

MemRelay-Operation: memory-save:rapt-api-align-20260927
MemRelay-Resource: 3d3bfecf-f204-4197-a9b0-082856e7102c
This commit is contained in:
2026-09-27 14:30:24 +08:00
parent 3537a4732a
commit 6ab8337bc0
@@ -8,22 +8,15 @@ memory_type: fact
project_id: 280dd2a0-d23d-4a71-91e1-dce4353163be
usage_profile_id: 0c9feb46-d06e-43cd-9ef0-c5813c84a998
status: active
revision: 1
request_id: rapt-api-capture-compare-20260927
revision: 2
request_id: rapt-api-align-20260927
created_at: '2026-09-26T23:16:24.440739+00:00'
updated_at: '2026-09-26T23:16:24.440739+00:00'
updated_at: '2026-09-27T06:30:21.646996+00:00'
tags:
- api
- capture
---
2026-09-27 在模拟器 emulator-5556 上对照了正在运行的 App 和桌面端。登录后的请求都带相同的设备头和 apasstk。App 多一个头 http_accept_language_custom,值是语言的小写形式。
重装 App 后再次抓包:GET /app/open/classifyv2 无正文;GET /app/open/classify_video?type=&page= 没有 limit。首页还有 GET /app/open/orgin?class=trending_now 和 class=new_releases。协议头比桌面端多 http_accept_language_custom,值是语言小写;Accept-Encoding 为 gzip。空 POST(游客登录、getUserInfo)正文为空、Content-Length 为 0。
差异在参数而不是头:
- 分类剧目是 GET /app/open/classify_video?type=&page=,没有 limit。桌面端是 POST JSON,带 page、limit、type。
- 新片和热门都是 GET /app/open/orgin,分别带 class=new_releases 和 class=trending_now。桌面端调用时没有 class。
- App 底部推薦页是 GET /app/open/foryou?page=1。这次没有出现 POST /app/open/recommend。
- 分集是 POST /app/video/playlistv2,正文 {vid, page, before},第一页 before=1,后续页 before=0。与桌面端一致。这次没有调用不带 v2 的 playlist。
- getUserInfo 是 POST,App 正文为空,桌面端发 {} 。
v2 和不带 v2 可以共用这套头。抓包用的临时证书和转发已经清掉,并重启了模拟器框架。不要把 token 写进记忆。
桌面端已按这些改:server/services/device.py 补上这两个头;http.py 空 POST 不再发 {};分类改为 GET;原 Recommend 的 POST /app/open/recommend 改为 GET /app/open/orgin?class=trending_now,新片为 class=new_releases。没有接 foryou。playlistv2 保持 {vid,page,before}。开发期 cache/catalog.json 已删,下次进清单会重新请求。