Nexus 和 NPM 的 404 错误
Error 404 with Nexus and NPM
我设置了一个 Nexus 组和代理(如 nexus 3 文档中所述)以在我的内部企业网络中缓存我的 npm 库。我将我的 .npmrc 配置如下:
registry=http://<repo url>/repository/<group>/
email=admin@company.com
_auth=YWRtaW46YWRtaW4=
当我在详细模式下启动 npm install
时,我得到如下输出(只是摘录,有很多 404):
....
fetch GET 200 http://<repo-url>/repository/<group>/camelcase 390ms
http fetch GET 200 http://<repo-url>/repository/<group>/run-sequence 171ms
fetch GET 200 http://<repo-url>/repository/<group>/lru-cache 343ms
http fetch GET 200 http://<repo-url>/repository/<group>/gulp 260ms
http fetch GET 200 http://<repo-url>/repository/<group>/tslint 591ms
httphttp fetch GET 200 http://<repo-url>/repository/<group>/gulp-flatten 193ms
fetch GET 404 http://<repo-url>/repository/<group>/typescript 578ms
httphttp fetchfetch GET 200 http://<repo-url>/repository/<group>/glob-stream 274ms
....
最终导致:
npm verb type OperationalError
npm verb stack Error: 404 Not Found: typescript@2.4.2
npm verb stack
at fetch.then.res ...
但是当我使用浏览器调用失败的工件 URL(失败并返回 404)时,我毫无问题地获得了相应工件的元数据。
到目前为止我尝试了什么:
- added/removed企业代理:无变化
- 直接使用代理存储库:尽管 URL 在我的浏览器中可以访问
,但我为每个工件获得了一个 ECONNRESET
好的,我的企业代理仍然设置为全局。我之前一定以某种方式执行过 npm config set ...
一次。但是:当我使用 npm config rm https_proxy
删除代理时,它开始完美运行!所以最后这是一个代理问题(无论出于何种原因)。
还是有点奇怪,因为 nexus url 以 http 而不是 https 开头,所以我没想到这里的 https 代理会出现问题。但我多次切换它以确保这确实是问题所在,而且确实如此。这可能是一个 npm 错误。
我设置了一个 Nexus 组和代理(如 nexus 3 文档中所述)以在我的内部企业网络中缓存我的 npm 库。我将我的 .npmrc 配置如下:
registry=http://<repo url>/repository/<group>/
email=admin@company.com
_auth=YWRtaW46YWRtaW4=
当我在详细模式下启动 npm install
时,我得到如下输出(只是摘录,有很多 404):
....
fetch GET 200 http://<repo-url>/repository/<group>/camelcase 390ms
http fetch GET 200 http://<repo-url>/repository/<group>/run-sequence 171ms
fetch GET 200 http://<repo-url>/repository/<group>/lru-cache 343ms
http fetch GET 200 http://<repo-url>/repository/<group>/gulp 260ms
http fetch GET 200 http://<repo-url>/repository/<group>/tslint 591ms
httphttp fetch GET 200 http://<repo-url>/repository/<group>/gulp-flatten 193ms
fetch GET 404 http://<repo-url>/repository/<group>/typescript 578ms
httphttp fetchfetch GET 200 http://<repo-url>/repository/<group>/glob-stream 274ms
....
最终导致:
npm verb type OperationalError
npm verb stack Error: 404 Not Found: typescript@2.4.2
npm verb stack
at fetch.then.res ...
但是当我使用浏览器调用失败的工件 URL(失败并返回 404)时,我毫无问题地获得了相应工件的元数据。
到目前为止我尝试了什么:
- added/removed企业代理:无变化
- 直接使用代理存储库:尽管 URL 在我的浏览器中可以访问 ,但我为每个工件获得了一个 ECONNRESET
好的,我的企业代理仍然设置为全局。我之前一定以某种方式执行过 npm config set ...
一次。但是:当我使用 npm config rm https_proxy
删除代理时,它开始完美运行!所以最后这是一个代理问题(无论出于何种原因)。
还是有点奇怪,因为 nexus url 以 http 而不是 https 开头,所以我没想到这里的 https 代理会出现问题。但我多次切换它以确保这确实是问题所在,而且确实如此。这可能是一个 npm 错误。