如何配置 Nexus Repository Manager 以支持 npm 审计

How to configure Nexus Repository Manager to support npm audit

当我尝试在我的 (Angular 7) 应用程序中执行 npm audit 时,出现以下 npm 错误:

npm ERR! code ENOAUDIT
npm ERR! audit Your configured registry (https://nexus.xxx.com/repository/yyy/) does not support audit requests, or the audit endpoint is temporarily unavailable.

有谁知道如何让 Nexus 支持 npm audit

如链接的 JIRA (NEXUS-16954) 中所述,使用 npm audit --registry=https://registry.npmjs.org.

应该可以解决 NXRM

更新(2020 年 5 月 11 日):从 NXRM 版本 3.23 开始,npm audit 应该适用于配置了 Sonatype 防火墙或 IQ 服务器的系统。返回的消息应该不再出错,而是对此进行解释。 further JIRA ticket 已打开以跟踪希望此命令在没有此处所述但未在本次更新时实施的解决方法的情况下工作。

npm audit --registry=https://registry.npmjs.org 的解决方案仅在您的 npm 客户端可以通过互联网访问 registry.npmjs.org 时才有效。

如果不是这种情况,并且您不想为 Nexus 防火墙或 Nexus Lifecycle 付费,您可以设置另一个代理,将所有调用重定向到 https://nexus.xxx.com/repository/yyy/-/npm/v1/security/audits and all of its subpaths to https://registry.npmjs.org/-/npm/v1/security/audits

类似 https://github.com/chovyy/npm-audit-proxy 的内容可能会有帮助。