当前位置: 首页 > article >正文

前端项目依赖包中的依赖包漏洞解决方案

一般情况下,如果是package.json文件中的依赖包出现漏洞,我们可以直接到最新版本或者指定版本即可。

还有一种情况就是依赖包中的子依赖包甚至更深层级的包存在漏洞,这个时候改最外层包的版本并不能解决这个问题。

以下方案可以实现强制升级子包依赖,代码供参考:

1、正常提交package-lock.json文件到代码库

2、在package.json文件中的scripts配置项添加如下命令:

"preinstall": "npx force-resolutions"

"preinstall": "npx npm-force-resolutions"

如果上述命令报错可使用以下命令:

"preinstall": "npm install --package-lock-only --ignore-scripts && npx npm-force-resolutions"

3、在package.json文件中的resolutions配置项中添加需要升级的依赖版本,比如unset-value的无漏洞版本 为2.0.1,那么我们可以配置如下:

"resolutions": {
    "unset-value": "2.0.1"
  }

4、本地执行npm i 后提交package-lock.json文件

整个package.json文件看起来应该像这样:
{
  "name": "xxx-web",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "start": "npm run serve",
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint",
    "preinstall": "npx npm-force-resolutions",
  },
  "dependencies": {
    "axios": "0.24.0",
    "core-js": "3.19.1",
    "echarts": "5.2.1",
    ...
  },
  "devDependencies": {
    "@vue/cli-plugin-babel": "4.5.15",
    "@vue/cli-plugin-eslint": "4.5.15",
    "@vue/cli-plugin-router": "4.5.15",
    ...
  },
  "resolutions": {
    "unset-value": "2.0.1"
  }
}


http://www.kler.cn/news/326405.html

相关文章:

  • springboot实战学习(10)(ThreadLoacl优化获取用户详细信息接口)(重写拦截器afterCompletion()方法)
  • 解决VRM格式模型在Unity中运行出现头发乱飞等问题
  • Java | Leetcode Java题解之第443题压缩字符串
  • ECCV 2024 | 融合跨模态先验与扩散模型,快手处理大模型让视频画面更清晰!
  • 数据中心解决方案
  • 手写体识别毕设——人工智能和深度学习技术的快速发展
  • 前端安装 lerna
  • Knots_3D 9.3.0 一款教你绑绳结的手机应用
  • 高标准农田灌区信息化:为农业可持续发展注入新动力
  • 开源模型应用落地-qwen2.5-7b-instruct-LoRA微调-LLaMA-Factory-单机单卡-V100(十八)
  • 抽象工厂模式和工厂模式的区别
  • 使用 IntelliJ IDEA 连接到达梦数据库(DM)
  • 大厂面试真题- RPC通讯协议如何保证数据完整性
  • 谷歌网站收录查询,怎么查看网站在谷歌的收录情况
  • 1. AOSP源码导入到AndroidStudio
  • JWT 令牌生成报错
  • Linux(含麒麟操作系统)如何实现多显示器屏幕采集录制
  • 8.代码风格调试%结课竞赛
  • Ubuntu篇——Ubuntu20.04备份成ISO镜像文件并安装到其他电脑上(完整步骤)
  • 安全无忧,简单便捷:打造财富通开锁小程序
  • 根据现有html里的元素上面动态创建el-tooltip组件并显示的几种方式
  • js中数组操作filter()、some()、every()等函数
  • 五,MyBatis-Plus 当中的 “ActiveRecord模式”和“SimpleQuery工具类”(详细实操)
  • 360° 镜头检测铝件内壁划痕与杂质:保障铝件内孔制造质量的精准方案
  • Flutter中使用FFI的方式链接C/C++的so库(harmonyos)
  • winform 将untiy程序嵌入到一个panel里
  • oracle 如何获取当前时间的日份,月份,年份
  • 目前最好用的爬虫软件是那个?
  • YOLOv10涨点改进:IoU优化 | Unified-loU,用于高品质目标检测的统一loU ,2024年8月最新IoU
  • 快速学会一个算法,BERT