必须用官方插件shengchen.vscode-leetcode且endpoint设为leetcode-cn,否则登录成功也看不到题目、点击报401、描述全英文;需在settings.json中添加"leetcode.endpoint": "leetcode-cn"并重启VSCode,同时删除缓存目录并验证curl -I https://leetcode.cn/api/problems/all/返回200。

必须用官方插件 shengchen.vscode-leetcode,且 leetcode.endpoint 必须设为 leetcode-cn,否则登录成功也看不到题目、点击报 401、描述全是英文——这不是插件坏了,是连错了服务器。
怎么确认并设置正确的 endpoint
力扣中文站(leetcode.cn)和国际站(leetcode.com)账号体系完全隔离,Cookie、Token、题库 ID 都不互通。你浏览器登录的是 https://leetcode.cn,VSCode 就必须配 "leetcode.endpoint": "leetcode-cn"。
- 打开 VSCode 设置(
Ctrl+Shift+P→ 输入Preferences: Open Settings (JSON)) - 在 JSON 中添加或修改这一行:
"leetcode.endpoint": "leetcode-cn" - 改完必须重启 VSCode,插件不会热重载该配置
- 如果之前连错过,手动删掉缓存目录:
~/.vscode/extensions/shengchen.vscode-leetcode-*/out/cache/(Windows 路径类似%USERPROFILE%\.vscode\extensions\shengchen.vscode-leetcode-*/out/cache/) - 验证是否通:终端执行
curl -I https://leetcode.cn/api/problems/all/,返回200 OK才说明网络和 endpoint 都对
登录总卡住或登录后列表为空怎么办
插件已不支持密码直连,必须走 OAuth 流程或 Cookie 登录。常见失败不是输错密码,而是环境不匹配。
- 先在 Chrome/Firefox 中打开
https://leetcode.cn,用邮箱+密码或已绑定的 Google 账号登录成功 - 回到 VSCode,
Ctrl+Shift+P→ 输入LeetCode: Sign in,选Email或Google,**不要点 GitHub** - 若弹出浏览器窗口白屏,临时禁用 uBlock Origin 等广告拦截插件
- 状态栏显示
Signed in as xxx不代表真登录成功——点开题目列表为空?大概率是 endpoint 没配对,或 Cookie 已过期 - 更稳的方式是 Cookie 登录:
F12→ Application → Cookies → 复制LEETCODE_SESSION和csrftoken两个值 →Ctrl+Shift+P→LeetCode: Login with Cookie→ 粘贴 → 点侧边栏刷新按钮(别等自动同步)
Test 报 command not found 或 Submit 没反应
插件本身不执行代码,它只是调用你本地终端里的解释器或编译器。报这个错,说明 VSCode 根本找不到对应命令。
- Python 用户:在 VSCode 内置终端运行
python --version,如果报错,说明python命令不在系统PATH;插件默认认python,不是python3;如需强制用python3,加配置:"leetcode.pythonPath": "/usr/bin/python3" - Java 用户:必须装 JDK(不是 JRE),且
java和javac都得能在终端直接调用;插件不读JAVA_HOME,只看PATH;版本建议 ≥ 11 - C++ 用户:插件默认调
g++;macOS 装 Xcode Command Line Tools 即可;Windows 强烈建议用 WSL2 + g++,原生 MinGW 容易因路径含空格或中文崩 - 提交前务必保存文件——插件提交的是当前打开的、已保存的文件内容,未保存的修改不会提交
新建题目后本地 Test 通过但网页 Submit WA
不是逻辑错,往往是模板签名或输入处理细节没对齐。
- 插件生成的函数签名是严格校验的,比如
def twoSum(self, nums: List[int], target: int) -> List[int]:,参数名nums不能改成n,否则判题器解析失败 - 插件把 JSON 测试用例反序列化后直接传入函数,不需要你写
input()或sys.stdin;手写 stdin 解析反而会卡住 - 输出多 return 了
None也会 WA,尤其 Python 中函数末尾隐式返回None,要确保只返回题目要求的类型 - 检查边界 case:空输入、单元素、负数、大数溢出——本地测试用例往往不全,网页判题器会跑更严的 case
最常被忽略的一点:endpoint 配错之后,即使你后续改对了、也重启了 VSCode,旧 token 仍可能残留在缓存里干扰新登录——删 cache 目录这步不能跳。


















