npm - 为什么当 curl 可以 200 时 npm 说 404

标签 npm artifactory

我添加了一个像 myscope:registry=https://myprivatedomain.com/artifactory/api/npm/npm-myregistry-release/ 这样的注册表给我的.npmrc文件。

当我做 npm install @myscope/mypackage它说 404 Not Found。当我 cat 调试日志时,它有错误 7 http fetch GET 404 https://myprivatedomain.com/artifactory/api/npm/npm-myregistry-release/@myscope%2fmypackage 1463ms这很奇怪,因为如果我这样做 curl https://myprivateregistry.com/@myscope%2fmypackage我看到了回应。知道我可能配置错了什么吗?

使用 -i on curl 给了我你期望的所有适当的东西,比如 200:

HTTP/1.1 200 OK
Date: Fri, 20 Jul 2018 19:03:17 GMT
Content-Type: application/json
Transfer-Encoding: chunked
Connection: keep-alive
Server: Artifactory/5.10.3
X-Artifactory-Id: 3cfb3447e11ab4943a37f53d7a5dcd357274261d
X-Artifactory-Node-Id: art2
ETag: c3636860e64da7eda14f65ff25c1e8ad11266adc

我做了npm search @myscope什么也没找到。然后我更新了.npmrc只是registry=https://myprivatedomain.com/artifactory/api/npm/npm-myregistry-release/并进行了搜索。我看到包裹上来了。尽管现在搜索工作正常,但当我去安装时它仍然显示 404。

我让我的同事使用相同的 npm 配置,它对他有用。我关闭了终端并重新启动(以防我使用 npm login 设置了一些不好的东西,作为健全性检查)但仍然存在问题。如果我这样做 npm logout并尝试安装,我得到一个 401。然后我做了 npm login再次回到E404
我也进入了我的.gitconfig并注释掉 insteadOf像这样:
#[url "https://"]
#       insteadOf = git://

老实说,不确定为什么会在那里,但似乎值得一试就为此发表评论。

最佳答案

似乎在注册表端存在一些配置问题。把它写成占位符。希望让注册表所有者写下他们为纠正此问题所做的工作。非常奇怪,因为它并没有影响到每个人。

关于npm - 为什么当 curl 可以 200 时 npm 说 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51448868/

相关文章:

Gradle 发布到 artifactory - 找不到方法 artifactoryPublish()

node.js - 无法轻松地从测试运行器输出导航到 WebStorm 中的相关文件

node.js - 使用 npm 在 linuxmint 操作系统上安装大写模块的问题

人工 API AQL "Displaying Specific Fields"

Artifactory AQL 删除空文件夹

java - 从 Artifactory 下载元数据信息

npm - 如何使用visual-studio-code编辑npm配置文件?

css - 具有多个入口点的 node-sass 脚本

node.js - 无法完成 "npm run deploy"命令以便 React 在 Github Pages 上使用

Gradle 永远不会在 JCenter 存储库之前解析 Artifactory 的依赖项