[英]`npm audit` keeps returning "Your configured registry (https://registry.npmjs.org/) does not support audit requests.". How do I make it work again?
这是我得到的错误:
npm ERR! code ENOAUDIT
npm ERR! audit Your configured registry (https://registry.npmjs.org/) does not support audit requests.
使用日志文件:
0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'audit' ]
2 info using npm@6.4.1
3 info using node@v10.12.0
4 verbose npm-session 65e7a3436fc1253b
5 timing audit compress Completed in 25ms
6 info audit Submitting payload of 217372 bytes
7 http fetch POST 503 https://registry.npmjs.org/-/npm/v1/security/audits 13252ms
8 verbose stack Error: Your configured registry (https://registry.npmjs.org/) does not support audit requests.
8 verbose stack at Bluebird.all.spread.then.catch (/usr/local/lib/node_modules/npm/lib/audit.js:172:18)
8 verbose stack at tryCatcher (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/util.js:16:23)
8 verbose stack at Promise._settlePromiseFromHandler (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:512:31)
8 verbose stack at Promise._settlePromise (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:569:18)
8 verbose stack at Promise._settlePromise0 (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:614:10)
8 verbose stack at Promise._settlePromises (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/promise.js:689:18)
8 verbose stack at Async._drainQueue (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:133:16)
8 verbose stack at Async._drainQueues (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:143:10)
8 verbose stack at Immediate.Async.drainQueues [as _onImmediate] (/usr/local/lib/node_modules/npm/node_modules/bluebird/js/release/async.js:17:14)
8 verbose stack at runCallback (timers.js:705:18)
8 verbose stack at tryOnImmediate (timers.js:676:5)
8 verbose stack at processImmediate (timers.js:658:5)
9 verbose cwd /Users/danielhasegan/workspace/code
10 verbose Darwin 18.2.0
11 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "audit"
12 verbose node v10.12.0
13 verbose npm v6.4.1
14 error code ENOAUDIT
15 error audit Your configured registry (https://registry.npmjs.org/) does not support audit requests.
16 verbose exit [ 1, true ]
我尝试了在 github 中找到的多个想法,但我没有设置任何proxy
或http-proxy
。 两者都返回null
:
npm config get proxy
npm config get https-proxy
有任何想法吗? 这不是暂时的,我已经有一段时间了。 我觉得我得到503
很奇怪。 这意味着我的连接有问题。
尝试运行npm update
然后npm audit
。 这应该可以解决问题。
当你的package.json
有类似"PACKAGE_NAME": "github:USERNAME/PACAKGE_NAME"
或任何其他不同的模式而不是典型的模式时,你可以拥有它,即"PACKAGE_NAME": "PACKAGE_VERSION"
。
第一的
npm install -g npm
然后
npm audit
可能会解决您的问题
我已经尝试了所有提到的答案,但没有运气。 它的工作对我来说,只有当我删除这两个node_modules
和package-lock.json
,我运行后npm install
,然后npm audit fix
,然后它的工作
我发现https://npm.community/t/your-configured-registry-https-registry-npmjs-org-does-not-support-audit-requests/3600/6给出的答案有效,其中没有以上答案有帮助:
删除您的 node_modules 文件夹,然后尝试运行 npm install --> npm update --> npm audit
对我来说,只有在删除package-lock.json
并运行npm update
我才能运行npm audit
。
我相信这是 NPM 服务器的服务问题。 我在 CI 和开发机器中的所有项目中都遇到了同样的问题。 所以不太可能是环境或package.json
问题。
注意错误:
http 获取 POST 503 https://registry.npmjs.org/-/npm/v1/security/audits 13252ms
503 是服务器问题:
超文本传输协议 (HTTP) 503 服务不可用服务器错误响应代码表示服务器未准备好处理请求。
常见原因是服务器停机维护或过载。 此响应应用于临时条件,并且 Retry-After HTTP 标头应尽可能包含服务恢复的估计时间。
https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/503
只需等待一些时间来解决 NPM 服务中的任何问题即可为我修复它。 我怀疑所有这些关于更新 npm、删除package-lock.json
、删除node_modules
只会导致服务问题解决的延迟。
解决此问题的最安全方法是删除文件夹node_modules和package-lock.json并运行npm install
对我而言,问题出在我的 npm 配置文件中,上述修复程序均无效。
执行以下操作解决了该问题。
1: 如果 npmrc 不可用,请安装它
npm i npmrc -g
2:为公共 NPM 注册表创建配置文件
npmrc -c npm
npm 配置设置注册表https://registry.npmjs.com/
参考: https : //docs.open-registry.dev/known-issues-and-workarounds/
我们在.npmrc
文件中提到了一个阻止审计的私有注册表。 我只是评论说要进行审计。
我不会推荐npm update
,尤其是像我这样的企业应用程序,它有数百个模块和数十个内部和外部依赖项。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.