Help us understand the problem. What is going on with this article?

ERR! 400 Bad Requestでnpm auditに失敗する時の対処法

More than 1 year has passed since last update.

tumblr_inline_nhgxxlaHT81qa4tsw.png

npm6系で npm audit を実行しようとした時に下記のようなステータスコード400のエラーが返ってくることがあります。

terminal
npm ERR! code E400
npm ERR! 400 Bad Request - POST https://registry.npmjs.org/-/npm/v1/security/audits

本記事執筆時点での最新バージョン(node@10.14.1(LTS) / npm@6.5.0)でも発生しているこの不具合は、npmコミュニティでもバグ報告されており、Kat Marchánさんも把握していると見られることから将来のアップデートによって解消することが予想されます。が、現時点では厄介な現象になっています。原因としてはnode_modules内の特定のパッケージがプライベート・フォークされたパッケージを参照していることが考えられるようです。

一時的な解決法

私の場合は以下のコマンドで再びnpm auditが実行できるようになりました。

terminal
rm package-lock.json && npm i && npm audit fix

package.jsonは残してpackage-lock.jsonだけ消すのがポイント。
誰かの役に立てば幸いです。

cloudpack
Amazon Web Services (AWS) の導入設計、環境構築、運用・保守をサポートするマネジドホスティングサービス
https://cloudpack.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away