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

postman去除更新

一、关闭自动更新目前有两种方案:
1.Hosts文件配置以下地址屏蔽连接:
以下配置粘贴到文件中,文件位置:C:\Windows\System32\drivers\etc

0.0.0.0         dl.pstmn.io
0.0.0.0         sync-v3.getpostman.com
0.0.0.0         getpostman.com
0.0.0.0         go.pstmn.io

保存后重新打开如下就代表已经成功。

2.目录写入权限控制,打开Postman目录右键文件夹属性,点击编辑,勾选写入拒绝,确定后更新文件就不能下载了。


不过以上方案有个缺点就是齿轮设置上有个小红点


本人有强烈的强迫症,看着红点就想点,所以就想方设法去掉,通过研究发现可以修改文件实现。下面说下修改方法,打开 Postman目录找到app-版本号\resources\app.asar文件

然后就是解压缩出来文件。
1.如果电脑上装有nodejs ,可以通过asar解压,未安装asar可以执行命令安装 npm install -g asar
安装完成后打开命令提示符,

执行解压命令,asar extract app.asar ./app

打包命令:asar pack ./app app.asar

2.通过asar文件查看、打包、解包工具来提取出来。https://pan.baidu.com/s/1vLxmTTZYUYnfWiz4XiXs9A(提取码:9l3e)

然后就开始修改之旅了,本人js小白,改的不好地方麻烦大佬们给指正以下。
修改文件在解压好的目录下\js\requester.js
本文以Postman 7.36.7为例,其他版本可能略有区别。


打开文件,找到以下位置

这段代码的大概是做了这样的一件事情,通过接口发送软件的版本请求postman地址,如果官网最新版本大于本地版本,则会返回最新的版本号和下载地址,状态码是200 。 如果软件版本号大于或者等于官网版本则会返回状态码204。
修改思路就是不用返回的状态,写死状态和版本号。

以下是我的修改:

    updateHandler() {
    // populate release notes for current version
    //this.fetchReleaseNotes();
    //this.checkForUpdates();
    this.noUpdateFound(); //添加此行
  },

  noUpdateFound: function () {
    this.downloadVersion = '7.36.1' // 添加此行
    this.set({
      status: 'updateNotAvailable',
      data: null });

  },

  initialize: function () {
    this.set('isUpdateEnabled', pm.app.get('isUpdateEnabled'));

    // Disable if the flag is set but only if it is not a public facing channel
    // Used while running integration tests
    if (pm.env.DISABLE_UPDATES && !_.includes(PUBLIC_CHANNELS, window.RELEASE_CHANNEL)) {
      return;
    }

    if (!this.get('isUpdateEnabled')) {
      pm.logger.info('Updater bailed! Running on Snap!');
      return;
    }

    // initialization should be idempotent
    if (this.get('initialized')) {
      return;
    }
    this.set('initialized', true);

    // migrate existing data
    if (pm.settings.getSetting('autoDownloadUpdateStatus') === 0) {
      pm.settings.setSetting('autoDownloadUpdateStatus', _constants_AppSettingsDefaults__WEBPACK_IMPORTED_MODULE_0__["default"].autoDownload.MINOR);
    }
    this.updaterEventBus = pm.eventBus.channel(APP_UPDATE_EVENTS);
    //this.attachUpdaterEventsListeners();//删掉此行

    //this.checkForVersionUpdate();//删掉此行

    this.version = pm.app.get('version');
    this.appId = pm.app.get('installationId');
    this.userAgent = navigator.userAgent;
    this.platform = this.getPlatform();
    this.arch = this.getArch();
    this.updateServerDomain = postman_update_server_url;

	this.noUpdateFound();//添加此行并删除之后的
    //setTimeout(() => {
    //  navigator.onLine && this.updateHandler();
    //}, 10000); // After 10 sec

    //setInterval(() => {
    //  // If an update is already downloaded don't check for new updates
    //  if (this.get('status') === 'downloaded') {
    //    // Show the banner if user has not restarted app for a week
    //    const hasCrossedNoUpdateTimeout = Date.now() - this.get('downloadedTimestamp') > NO_UPDATE_BANNER_TIMEOUT,
    //    isBannerAlreadyOpen = _.find(_controllers_Infobar__WEBPACK_IMPORTED_MODULE_11__["default"].infoList, { _id: NOT_UPDATED_BANNER_ID }); // same banner is already shown, don't show another
	//
    //    if (hasCrossedNoUpdateTimeout && !isBannerAlreadyOpen) {
    //      _controllers_Infobar__WEBPACK_IMPORTED_MODULE_11__["default"].add(NOT_UPDATED_MESG);
    //      _controllers_Infobar__WEBPACK_IMPORTED_MODULE_11__["default"].show();
    //      _modules_services_AnalyticsService__WEBPACK_IMPORTED_MODULE_6__["default"].addEvent('app', 'show_update_restart_banner');
    //    }
	//
    //    return;
    //  }
	//
    //  navigator.onLine && this.updateHandler();
    //}, AUTO_UPDATE_TIMER);
  },


最后保存,需要删掉原先app.asar文件,重新把文件打包成app.asar或者直接修改目录名称为app也是可以的。

或者用工具重新打包


现在已经大功告成了,重新打开Postman 检查更新试试吧
————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/haocm08/article/details/125821740


http://www.kler.cn/a/452033.html

相关文章:

  • PyCharm专业实验2 查找算法实现与比较
  • RK3588在Android13/14如何查看GPU,NPU,DDR,RGA数据
  • 双指针——快乐数
  • Echarts+vue电商平台数据可视化——后台实现笔记
  • 【每日学点鸿蒙知识】大图性能问题、WebView加载网页问题、H5页面数据更新问题、安全控件位置影响数据保存、企业内部应用发布
  • 双重判定锁来解决缓存击穿问题
  • VTK知识学习(27)- 图像基本操作(二)
  • Cyberchef实用功能之-批量提取XML数据文件的字段内容
  • Win10提示“缺少fbgemm.dll”怎么办?缺失fbgemm.dll文件的修复方法来啦!
  • 4-pandas常用操作
  • LeetCode:257. 二叉树的所有路径
  • 一、后端到摄像头(监控摄像头IOT)
  • Docker--宿主机执行docker容器的命令
  • 【C++决策和状态管理】从状态模式,有限状态机,行为树到决策树(三):基于BT行为树实现复杂敌人BOSS-AI
  • MVC 参考手册
  • Flink中并行度和slot的关系——任务和任务槽
  • VUE前端实现防抖节流 Lodash
  • TCN-Transformer+LSTM多变量回归预测(Matlab)添加气泡图、散点密度图
  • “自动驾驶第一股” 图森未来退市转型:改名 CreateAI、发布图生视频大模型 “Ruyi”
  • 大模型-Dify使用笔记