node.js - npm 安装错误:“主机密钥验证失败”
问题描述
我正在尝试npm install
在一个新的 Angular 应用程序中运行。我在公司防火墙后面运行它,这显然是问题所在。
我在pemrouz/buble
包中遇到了错误,这是依赖项的依赖项。Angular 的依赖项之一是明确指定使用 SSH 下载 buble。最初,SSH 连接被阻止,但我能够说服网络组允许连接。
但是,它仍然被代理,这会弄乱 SSL 的东西。
我可以git clone
通过指定 git 不使用严格的 SSL 来打包,但 NPM 会忽略此设置。我还可以指定 NPM 不使用严格的 SSL,这允许 HTTPS 连接正常工作——但显然这也不适用于 SSH。
我没有使用 Docker 或 Chocolatey(对于其他看到此错误的人来说,这似乎是问题的常见来源)。
我在 StackOverflow 和其他地方看到过其他问题,人们遇到过这个问题,但答案总是“你运行的是旧版本的 NPM”。但是,我正在运行 6.14.4,这似乎是最新的。此外,我不明白这会如何导致主机密钥问题?
如何在不使用严格 SSL 的情况下让 NPM 建立 SSH 连接?否则,我该如何解决主机密钥验证问题?
谢谢!
编辑:我跑了ssh git@github.com
,它提示我“你想相信这个吗?” 我说是的 - 现在它在我运行时显示错误“权限被拒绝(公钥)” npm install
。
这不是私人回购,它是https://github.com/pemrouz/buble上的公共回购。
解决方案
推荐阅读
- angular - 无法重置包含选择的反应式表单
- python - 如何在 django-rest-framework 中使用相同的 url conf 调用 CreateApiView 和 ListApiView?
- python - Python:如何在数组中进行条件运算
- scala - 没有结果的类型测试:Option[akka.actor.ActorSystem] 类型的值不能也是 akka.actor.ActorSystem
- react-native - 路由 'AuthLogin' 的组件必须是 React 组件
- node.js - 无法从对话流代理调用部署在我的服务器上的 webhook
- .net - 如何在没有 Fiddler 的情况下查看来自 .NET 库的 https 请求?
- asp.net-core - 为什么 ASP.NET MVC 标签助手不能创建正确的链接?
- python - python:从字典中提取多个键
- python - 如果满足条件,则将图形添加到数据表单元格