node.js - NPM Install 不适用于代理后面的 Artifactory

标签 node.js npm artifactory

我已将 artifactory 和 npm 配置为在代理后面工作:

npm 配置集注册表 http://myserver:8081/artifactory/api/npm/npmjs

当我调用 npm info bower 时,它工作正常,但 tarball URL 已经看起来可疑:{ tarball: 'http://myserver:8081/artifactory/api/npm/npmjs/registry.npmjs.org/bower/-/bower-1.3.12.tgz', shasum: '37de0edb3904baf90aee13384a1a379a05ee214c'

npm install bower 由于错误的 tarball URL 而失败。这是我的 npm-debug.log 的相关输出:

34 silly mapToRegistry registry http://myserver:8081/artifactory/api/npm/npmjs
35 silly mapToRegistry uri http://myserver:8081/artifactory/api/npm/npmjs/bower
36 verbose addRemoteTarball http://myserver:8081/artifactory/api/npm/npmjs/registry.npmjs.org/bower/-/bower-1.3.12.tgz not in flight; adding
37 verbose addRemoteTarball [ 'http://myserver:8081/artifactory/api/npm/npmjs/registry.npmjs.org/bower/-/bower-1.3.12.tgz',
37 verbose addRemoteTarball   '37de0edb3904baf90aee13384a1a379a05ee214c' ]
38 info retry fetch attempt 1 at 11:39:11
39 info attempt registry request try #1 at 11:39:11
40 http fetch GET http://myserver:8081/artifactory/api/npm/npmjs/registry.npmjs.org/bower/-/bower-1.3.12.tgz
41 http fetch 404 http://myserver:8081/artifactory/api/npm/npmjs/registry.npmjs.org/bower/-/bower-1.3.12.tgz
42 error fetch failed http://myserver:8081/artifactory/api/npm/npmjs/registry.npmjs.org/bower/-/bower-1.3.12.tgz

URL 中的 registry.npmjs.org 部分是错误的,正确的 tarball URL 应该是这个:http://myserver:8081/artifactory/api/npm/npmjs/bower/-/bower-1.3.12.tgz。从这个 URL,我可以使用 curl 手动下载 tarball。

如果我配置有误或某处存在错误,您有什么想法吗?

Artifactory v3.4.2,npm v2.5.1

最佳答案

当应该代理 npmjs 注册表的远程存储库指向错误的 URL(例如 http://registry.npmjs .com 而不是 .org)时,就会发生这种情况。

关于node.js - NPM Install 不适用于代理后面的 Artifactory ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28672443/

相关文章:

node.js在发出http请求时区分错误

android - NPM 缓存步骤在 Azure DevOps 中不起作用

javascript - 井号 (#) 作为评论的开始在 JavaScript 中?

maven - 人工权限

java - 使用gradle将war文件发布到artifactory

javascript - 如何在 nodejs 中包含 liquidfun 物理引擎

javascript - 使用 expressjs 3 强制 SSL

javascript - npm link gulp 之后任务 'default' 不在你的 gulpfile 中

node.js - 从单个存储库发布多个包

java - 从 Maven for Artifactory 本地下载 Artifact