问题标签 [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.
npx - 运行npx时如何传递内联选项?
在不更改工作站的全局 npm 配置或在当前目录中创建.npmrc
文件的情况下,我想使用私有 nexus 注册表运行 npx 包。
那么,是否可以使用 和 等内联选项运行命令npx
(最好是跨平台)?就像是:registry
strict-ssl
我在 PowerShell/Windows 上尝试了上面的代码片段,但我的注册表没有被命中,它仍然试图访问默认注册表 ( https://registry.npmjs.org )。
node.js - 使用身份验证令牌查询给定软件包版本的私有 NPM 注册表,但没有文件系统访问权限?
这项工作的目的是能够测试包版本是否存在于私有注册表中,而无需接触文件系统/配置文件。对于公共注册表中的包,这非常简单:npm view lpad@2.0.1
生成有关该已发布版本的一些信息,但(在撰写本文时)npm view lpad@201.0.0
没有任何信息或输出。我用它来推断包的存在。
我还可以将私有注册表 URL 传递给npm view <packagename>
,如npm view <packagename> --registry https://private.registry/path/
. 即使文档中没有明确提到它,这似乎也触及了私有注册表(但npm-view
文档中对此进行了描述,所以npm-search
我认为这是一个记录在案的 API 功能)。
为了能够完全与私有注册中心对话,我可以根据这些 npm 指令在查询中使用身份验证令牌,以便在 CI/CD 工作流程中执行此操作:将其放入.npmrc
文件中,如下所示:
或者更安全,//your_registry/:_authToken $TOKEN
并将TOKEN
环境变量设置为12345
别处。
我不知道该怎么做是npm view
针对私有npm
注册表使用,而不写入.npmrc
文件。
我计划在同一台机器上并行运行多个查询,因此为了避免.npmrc
文件中的竞争条件,我宁愿直接在每个命令中通过身份验证。我假设使用身份验证令牌,这只是一个简单的curl
命令,但我没有太多运气找到有关 NPM API 如何工作的信息。(npm-registry-client
似乎没有做任何与查看/查找相关的事情;它access
设置了访问级别)。
我错过了一些非常明显的东西吗?我在哪里可以找到有关 NPM 注册表查看和/或搜索功能请求格式的指南?curl
包含发送身份验证令牌、包名称和版本并接收其是否存在的指示的命令是什么?
node.js - npm install package 作为主项目,而不是依赖项
我正在使用 npm+node 进行一些简单的脚本编写。最小示例:我有一个节点项目目录(我在其中运行 npm init),其中包含script.js
、package(-lock)?.json
和node_modules
具有依赖项的目录。我从 cmdline 运行这个脚本node "C:/path-to-project/script.js"
。
我想在两台计算机之间共享这个脚本。我决定使用 npm 并将我的脚本发布到注册表。
问题:
MAIN)在另一台机器上安装包,将其node_modules
与其依赖项一起放入,因此不能像在原始机器上那样从主项目目录中使用。下载具有所需目录结构的包,但主项目(= script.js)npm-pack
没有更多功能。npm-update
SECONDARY)我正在使用本地依赖项,它作为链接添加到node_modules
. 我想将其保留为原始计算机上的本地链接,但第二次从注册表安装它。依赖项也已发布,但是在第二台电脑上安装时,npm 失败并Could not install from "node_modules\utils" as it does not contain a package.json file.
显示包是作用域的,因此没有命名冲突,并且在此处报告了类似的错误https://github.com/npm/npm/issues/ 18266。
那么实现我的目标的正确方法是什么?主要是关于将其安装为主项目而不是依赖项的第一部分,同时保持更新到新版本的能力。
npm - 无法将用户添加到 verdaccio 注册表
我正在尝试将范围包发布到 verdaccio 注册表。我通过以下命令安装了 verdaccio
npm install -g verdaccio
在我的 package.json 文件中添加了这个
之后我尝试通过以下命令添加用户
npm adduser --registry http://localhost:4873
谁能帮助我如何发布它?
angular - 在企业工件中发布 Angular 库
当我在企业 JFrog 设置 npm 存储库时,创建了以下 5 个 npm 存储库:
每当我尝试使用npm publish命令发布角度库时,我都可以将工件推送到npm-local存储库。但是当我尝试进行 npm install 时(在 package.json 中提到了公共和我们的依赖项)所以它抛出404 not found 错误,看起来它无法从npmjs 注册表 链接中提取公共工件。
同样,如果我指向JFrog 中的npm-central存储库,我可以从 npmjs 注册表中提取公共工件,但不能在那里发布我们的角度库。它抛出 400 错误请求错误。(以下错误日志)
可以,请任何人帮助我了解我必须在 JFrog 中指向哪个 npm 存储库,以便我可以推送我们的库以及从同一个 npm 存储库中提取公共工件。
PS:我在 .npmrc 文件中使用以下配置来指向 JFrog 的任何 npm 存储库:
node.js - 为 Google App Engine 标准使用私有 npm 注册表
对于所有其他 stackoverflow 问题,似乎人们正在询问私有 npm git 存储库或不同的技术堆栈。我很确定我可以在 GAE Flexible 中使用私有 npm 注册表,但我想知道标准版本是否可行?
从GAE 标准文档来看,这似乎是不可能的。其他人有其他想法吗?
cordova - 我如何添加插件身份库?
当我通过 cordova 添加身份库插件时遇到问题:
codova 插件添加 @ionic-enterprise/identity-vault
npm 错误!代码 E404 npm 错误!404 未找到 - 获取http://registry.npmjs.org/@ionic-enterprise%2fidentity-vault - 未找到 npm 错误!404 npm 错误!404 '@ionic-enterprise/identity-vault@3.6.3' 不在 npm 注册表中。npm 错误!404 你应该让作者发布它(或自己使用名称!)npm ERR!404 它被指定为“cs-demo-ac-iv-master”的依赖项
registry - 使用 Yarn 从 Github 包注册表安装私有包失败,未经授权
这个问题与这些有关。但是没有一个解决方案对我有用。
我可以毫无问题地安装一个包,npm install @scope/package
但是我不能对纱线做同样的事情:yarn add @scope/package
纱线抛出以下错误:
An unexpected error occurred: "https://npm.pkg.github.com/download/@scope/package/1.2.8/089b08cffb16074c210ec3a59b04de268ae1c7b3a0492dce110adee3ada05bdd: Request failed \"401 Unauthorized\"".
我的 .npmrc 文件看起来像这样:(在 .yarnrc 下面有无尝试)
我试过添加这个 .yarnrc 文件:
(没有 .yarnrc)我试过这个 .npmrc 文件
我从 Github 生成的我在MY_AUTHTOKEN
哪里。Personal Access Token
(它可以访问包中的所有内容)
我试图:
- 删除 yarn.lock
- 删除 .yarnrc
npm login
使用我的 PAT 作为密码登录- 注销 npm 并删除全局 .npmrc 和 .yarnrc
- 登录
yarn login
如果有任何混淆,我实际上并没有尝试 @scope 和 /package 而是我的实际范围和包名称。
我确实可以访问 Github 上的范围和包。
再次,我的第一个设置适用于 npm。但是我无法使用纱线来解决这个问题,并且在 SO 上找不到任何有效的现有解决方案。
npm - 安装私有 npm 包的问题
我有一个项目依赖于我们的组织已获得许可的一些私人 repo (fontawesome)
虽然所有其他软件包都是通过我们的内部注册表安装的,但 fontawesome 依赖项是通过 npm.fontawesome.com 安装的所以,在我的 中.npmrc
,我有以下内容
如您所见,还定义了一个代理。虽然其他依赖项下载正常,但由于某些原因,我根本无法安装 fontawesome 依赖项。
身份验证密钥很好(与拥有相同密钥的其他人核对)
有什么方法可以验证是否有某些东西阻止了对 fontawesome 注册表 URL 的访问?我如何使用任何命令或其他东西来验证相同的内容?
npm-registry - 更改 Netfly npm-registry 以使用第三方依赖项
我正在使用托管在公司 npm-registry 上的一些第三方依赖项(可公开访问),但我的 Angular 应用程序部署失败
有没有办法为 Netfly 配置 npm?