Keeweb_Last Modified_error

重新编译keeWeb修复坚果云Last-Modified错误

问题描述

问题描述: keeWeb使用坚果云webdav会报错没有Last-Modified

官方issue: https://github.com/keeweb/keeweb/issues/1523

总结:坚果云webdav返回响应头里没有Last-Modified

其它方案

之前因为这个原因, 换成了 keepassxc了, 但要另外装一个软件CloudMounter来把webdav挂载到本地硬盘上.

重新编译

参考: https://www.cyqsd.cn/8017.html

  1. clone 主仓库: https://github.com/keeweb/keeweb 到本地

  2. 全局安装构建工具Grunt

1
npm install grunt-cli -g
  1. 安装npm包
1
npm install
  1. 修改代码
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
// /app/scripts/storage/storage-webdav.js
// 搜到const rev = xhr.getResponseHeader('Last-Modified'), 大概330行
//把下面的 if 判断逻辑注释掉
// if (!rev && !config.nostat) {
//     this.logger.debug(
//         config.op + ' error',
//         config.path,
//         'no headers',
//         this.logger.ts(ts)
//     );
//     if (callback) {
//         callback(Locale.webdavNoLastModified, xhr);
//         callback = null;
//     }
//     return;
// }
  1. 打包 mac 安装包
1
grunt dev-desktop-darwin --skip-sign --force
  1. 安装: /tmp/desktop/KeeWeb-darwin-x64目录下的app直接拖到Applications

内存占用

keepassxc: 95m
CloudMounter:176m

keeweb: 460m

electron真是占用大呀. 本地应用还不如直接用 keepassxc + CloudMounter, CloudMounter还支持挂载alist等webdav, 或许部署到服务器是个更好的选择.

build with Hugo, theme Stack, visits 0