Skip to content
Discussion options

You must be logged in to vote

已在本机(Windows 11 / dsh-desktop 0.2.1-rc.3 / Electron 44.7.0 / Node 24.21.0)完整定位并复现,结论是:不是账号、网络或 profile 损坏,是认证 Cookie 累积把 HTTP 请求头撑过了 Host 的 16 KB 上限,请求在进入认证逻辑之前就被 431 拒掉了。

机制

  1. Host 每次启动监听 127.0.0.1 的随机端口;
  2. 认证 Cookie 名 = dsh-auth-<base64url(sha256("127.0.0.1:<port>"))>,即端口被编进了 Cookie 名(@deepseek-ai/dsh-client-connection → cookieName(authority),authorizeIndex 里 res.writeHead(303, { 'set-cookie': sessionCookie(cookieName(authority), …) }));
  3. 但浏览器 Cookie 罐只按 domain 归档、不区分端口,且该 Cookie 是 Max-Age=2592000(30 天)、从不主动清退 → 每次启动都新增一条,永不回收;
  4. 累积约 70 条后,Cookie 请求头本身已达 16,186 字节,加上 Chromium 固有请求头(UA / Accept / Accept-Encoding / Accept-Language / Sec-Fetch-*)后整块请求头超过 Host 内置 Node HTTP 服务器的默认 maxHeaderSize = …

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by Zeraphyms
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants