问题标签 [npm-registry]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
888 浏览

npm - 为本地开发和 CI 设置私有 npm 注册表身份验证的最佳实践是什么?

我想知道是否有一个通用的最佳实践来为本地开发设置私有 npm 注册表身份验证,它也适用于 CI(反之亦然)。

这是我目前的理解:

对于本地开发:运行npm login将创建一个访问令牌,创建一个~/.npmrc文件,并将访问令牌写入该文件,如下所示:

在我的项目中,我有这个.npmrc文件(旁边package.json):

这似乎工作得很好。我可以安装我的私有包,因为 npm 似乎选择了注册表的用户级身份验证设置。

对于 CI: NPM 文档建议将以下内容添加到项目级别.npmrc以在 CI 中注入身份验证:

不幸的是,这会覆盖我机器上的用户级配置。.npmrc文件具有以下优先级(从高到低):项目级、用户级、全局、npm 内置。npm CLI 现在尝试使用 NPM_TOKEN 环境变量进行身份验证,除非我在本地计算机上显式导出它,否则这显然不起作用。

也许我错过了一些明显的东西。如果没有,我很好奇是否有任何常见的最佳实践来处理这个问题?当已经在用户级别配置访问令牌时,要求每个员工在他们的机器上导出访问令牌.npmrc似乎不是一个很好的解决方案。

或者,可以根本不打扰用户级配置(或 npm 登录),直接在每个员工的本地计算机上将访问令牌导出为 NPM_TOKEN。但就像提到的那样,我发现这不是一个很好的解决方案。我想象一个标准解决方案(如用户级配置文件),每个员工都可以在其中设置公司的私人注册表。

0 投票
0 回答
137 浏览

reactjs - 尝试导入错误:'default' 没有从 '../assertThisInitialized/_index.mjs' 导出 - webpack 错误地将命名导入导入为默认值

出于某种奇怪的原因,Webpack 错误地尝试将命名导入作为默认导入。当我尝试在 docker 容器中构建我的项目时,我注意到了这个问题。我收到以下错误: 在此处输入图像描述

我还尝试直接在我的 Mac 上构建项目,并且最初构建成功。但是在删除我的node_modules文件夹并npm install重新运行后,我的项目停止编译。它开始抛出同样的错误:

在此处输入图像描述

我的 package.json 文件没有任何变化,我所有的包都有固定(精确)版本。我尝试更新 babel 及其所有插件,甚至尝试构建两周前成功构建的最后一个提交,但都无济于事。

如果完全没有任何改变,我仍然无法理解为什么我的项目将不再编译。npm 注册表有什么变化吗?

还有其他人遇到类似的问题吗?关于如何解决它的任何想法?

0 投票
1 回答
53 浏览

npm - 从 NPM 注册表 API 获取包依赖项

给定一个包名称和版本,我想找出它的依赖关系,最好使用 HTTP 请求。

0 投票
0 回答
2054 浏览

npm - npm 错误!代码 E401 密码不正确或丢失。如果您尝试登录,请更改密码,创建身份验证令牌

在我的新 M1 Macbook Air 上试用之前,我在旧 MacBook 上试用过它,它可以在旧机器上无缝运行,就像魅力一样

包.json

我遵循的步骤

1.

npm 配置设置注册表“https://npm.pkg.github.com/ABC”

npm login --scope=@ABC --registry=https://npm.pkg.github.com

用户名:git用户名

密码:个人访问令牌

电子邮件:MyEmail@Organization.com

在https://npm.pkg.github.com/上以 gitusername 身份登录。

3.

npm install -g lerna typescript npm-check-updates

面对这个问题

PS:所有命令都适用于我的旧 MACBOOK AIR

我在这个问题上挣扎了很长时间,阅读了所有相关的答案,但并不清楚。

0 投票
0 回答
308 浏览

npm - GitLab 无法发布 npm 包

我在将我的 npm 包发布到项目 gitlab 注册表时遇到问题。

这是 gitlab-ci.yaml 脚本

运行管道,我收到以下错误

有什么帮助谢谢!

0 投票
1 回答
1012 浏览

npm - 未找到纱线私有 gitlab 注册表 .tgz

我将一个 npm 包发布到我由 gitlab 提供的私有 npm 注册表。不,我尝试将包安装在另一个项目中。

身份验证是通过.npmrc位于项目根目录中的。

我尝试通过纱线安装包。

该命令失败并出现此错误

我认为这不是身份验证的问题,因为第一个请求是成功的。剂量有人知道如何让它工作吗?

0 投票
0 回答
20 浏览

node.js - 从相同范围的注册表下载多个包

我们在注册表中发布了两个库:

  1. @development-group/app-utils
  2. @development-group/ui-library

我想将它们都下载到我们的应用程序中,该应用程序也存在于https://gitlab.com/development-group/app-name. 如何使.npmrc文件指向两个注册表?

我想要类似的东西:

但是这种方法的问题是第二次注册表设置会覆盖第一次。我该如何处理这种情况?任何指针将不胜感激!

0 投票
2 回答
408 浏览

docker - 在 docker 中验证 npm 私有注册表

我们将作用域 js 包发布到私有注册表(由我们使用 Verdaccio 管理)。

这意味着在我们的生产环境中,我们需要对我们的私有注册表进行身份验证才能使用yarn install. 最简单的方法是什么?

0 投票
0 回答
244 浏览

azure-devops - 无法从 AppCenter 构建管道对 Azure DevOps Artifacts 源进行身份验证

我在 appcenter 上构建了一个 ReactNative iOS 应用程序,它无法访问 Azure DevOps Artifacts 上的 npm 提要。这是该项目的工件。我尝试了一切,但没有看到问题。

项目根 .npmrc

appcenter-post-clone.sh

在 npm install 阶段,这是输出

我正在使用以下机器配置运行管道

谢谢您的帮助

0 投票
1 回答
63 浏览

javascript - Fetching all private npm modules from an npmjs user

I'm working on a task to migrate all of our npm modules from npmjs.com. Problem is, all of our modules are stored under an npm user as private packages, and I can't find a way to consume all packages the user owns programmatically.

I found many examples that explain how to migrate a single package or a list of packages by name, but I've yet to understand how can I fetch every package a user owns to create that list.

There are a few modules that allow interacting with the NPM registry API, but I couldn't find out how to make them consume private scoped packages. I'm currently working with the npm-registry-fetch to try and get an example query working with no luck.
This is the code I'm trying to run -

This code results in this error -
HttpErrorGeneral: 404 Not Found - GET https://registry.npmjs.org/@<scope redacted>/<package name redacted> - Not found

How can I successfully query these type of packages?
Thanks.