更新:经过回滚历史版本,确认之前帖子里面描述的问题是不小心改动了资源文件链接所致,不是资源文件导入失败。
或许客户端可以在用户改动资源文件链接时检查新链接是否有效,如果无效则发出警告,以避免用户不小心改动链接导致链接无法打开。
最近在社区看到一个热帖,好像是反馈资源文件丢失,通过数据历史也无法找回。刚好自己最近也遇到了类似情况,来发表一下自己的猜测。操作:在电脑的资源管理器中 Ctrl+C 复制若干文件,然后到 Siyuan 中粘贴,会看到笔记中出现若干链接,每个链接对应一个文件。客户端没有提示任何错误信息。到这里,用户会认为我的文件已经成功存储进 Siyuan 的数据库了。有一天,我在手机端点击其中一个链接,尝试在手机上打开这个文件(Excel 文档),发现跳转到了浏览器。于是到 PC 端尝试打开这个文件,提示资源文件损坏。猜测:在向 PC 端 Siyuan 粘贴资源文件的过程中,由于未知原因某个资源文件导入失败,而客户端缺少校验机制,就是针对资源文件是否成功导入的校验,导致客户端未能向用户提示导入失败,用户认为已经导入成功。后续用户尝试打开这个文件时,发现打不开,就会认为是笔记软件丢失了数据,而事实上是在导入这一步出的问题(数据根本没有存进去,也就谈不上丢失)。改进方案:增加资源文件导入后的校验,将数据库中被导入的每个资源文件的文件大小和源文件的文件大小进行比对,如果二者不一致,说明导入失败,向用户提示错误信息(免责声明)。
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于