node.js - NPM 如何更新/升级传递依赖?

标签 node.js express npm

我在我的 Node 服务器中使用express v4.16.4。

它已引入 cookie-signature v1.0.6。

我想将 cookie-signature 升级到 v1.1.0,因为它有我需要的修复。 有什么方法可以做到这一点?

我认为我不应该执行 npm install cookie-signature@1.1.0 因为它会在我的应用程序依赖项中列出 cookie-signature。

编辑:this讨论了我想要解决的完全相同的问题。接受的答案是使用 npm-shrinkwrap ,另一个投票最高的答案是使用 package-lock.json ,但这两个答案似乎都存在各自评论中讨论的问题。

很高兴将其作为重复项关闭。

最佳答案

您还可以通过在 package.json 中添加 resolutions 键来“强制”某些版本的依赖项来解决该问题:

{
  "resolutions": {
    "cookie-signature": "^1.1.0"
  }
}

要真正利用它,您必须在预安装中使用npm-force-resolutions:

"scripts": {
  "preinstall": "npx npm-force-resolutions"
}

请参阅此帖子了解更多信息:https://itnext.io/fixing-security-vulnerabilities-in-npm-dependencies-in-less-than-3-mins-a53af735261d

关于node.js - NPM 如何更新/升级传递依赖?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56634474/

相关文章:

javascript - 如何在静态js中包含 Node 模块

node.js - 如何让 Stylus 与 CoffeeScript 中的 Express 和 Connect 一起工作

javascript - 将图像上传到未定义的 Node.js image'

node.js - NodeJS + SocketIO 客户端脚本

node.js - 使用 nodejs 和 Express 进行视频流

javascript - 当我们已经有了 Express 服务器时,为什么要为 Socket.io 创建新的 http 实例?

node.js - 错误 : cannot find module npm-shrinkwrap

javascript - 返回从 array.push 中的 firebase foreach 完成的数组

node.js - Restify CORS 不适用于 POST 请求

node.js - 无服务器框架 : Chrome "Error: spawn ETXTBSY",