【发布时间】:2017-02-23 23:12:18
【问题描述】:
我们在一个虚拟存储库中有 2 个远程 NPM 注册表。其中一个是 NPM Registry,另一个来自软件提供商。当我将第二个存储库添加到虚拟存储库时,我随机收到 HTTP 400 消息。
例如:如果我想从 npm-registry 安装一个包,我通过日志看到 Artifactory 正在尝试从另一个存储库(没有包)获取包并尝试解析响应作为json。来自其他存储库的响应会返回一个 html 文件,但这会导致以下错误消息:
2017-02-23 09:39:05,424 [http-nio-8080-exec-7112] [ERROR]
(o.a.a.n.r.NpmRemoteRepoHandler:362) - Error while parsing the response of a remote npm
JSON query on 'https://repository.domain.com/api/npm/public/file-loader':
Unexpected character ('<' (code 60)): expected a valid value (number, String, array, object,
'true', 'false' or 'null')
at [Source:org.artifactory.storage.db.binstore.service.UsageTrackingBinaryProvider$ReaderTrackingStream@7360bc6c; line: 1, column: 2]
如您所见,Artifactory 正在尝试从其他存储库获取包。当我尝试手动获取包时,我们的工件的 JSON 响应是:
{
"errors" : [ {
"status" : 400,
"message" : "Unable to parse remote repository npm metadata."
} ]
}
任何帮助将不胜感激,因为这会使 NPM 注册表完全无用,因为某些请求会返回此 HTTP 400 错误。
仅供参考:我们使用的是 Artifactory Pro 4.5.1
【问题讨论】:
标签: artifactory