测试代理时 npm ping 检查什么
在失败 npm 进程的上下文中运行检查,并把归档与生命周期下载同检查结果分开。
npm ping --registry=https://registry.npmjs.org/使用项目预期的 registry。npm ping 会联系该 registry,并通过当前配置验证身份认证。重要的是成功完成;旧示例中的空对象输出并非必需格式。
在故障发生的位置运行它。由 IDE 启动的 npm 进程可能具有与终端不同的环境或配置输入。
在正确的阶段解读结果
如果 ping 失败,请保留第一条错误。代理解析、连接监听端口、407 质询以及 registry 认证被拒属于不同阶段。
如果 ping 成功但安装失败,请保留后续下载的 URL 及其错误。归档可能位于另一台主机上,而且 生命周期脚本可能下载单独的可执行文件。例如,Cypress 记录了自己的代理与二进制下载行为;registry 的 ping 并不执行那次传输。
当问题在于流量究竟是否经过代理时,请将 registry 的响应与代理记录或对路由的其他观察配合起来。仅凭该响应只能确定可达性与认证,不能确定确切路径。