onedrive 下载文件名称异常,用OneDrive的也来说说有没有这个问题
谷歌浏览器,idm 由浏览器接管是开启的,但是下载仍然带uuid前缀不论触发idm与否,只能通过获取直链下载才是不带uuid的名称
而且小概率下载时文件名称正常我下了几十次,就两三次是正常的
遇到过. 不知道怎么解决, 我就把uuid放到文件名后面,,避免看起来像乱码.
这用不下去了,下压缩包还要手动改名字。作者也不见个回复😭
我测试出来的情况是,开启由浏览器处理下载后,Windows下使用百分浏览器,在第一次点击下载的时候可以保存为Cloudreve内显示的文件名,也就是由浏览器处理了。后续再次下载就无法实现浏览器处理下载功能,而是直接获取到SharePoint的直链。
多次测试感觉和浏览器关系不大,在第一次下载正确调用StreamSaver.js后,都只会获取到直链,等一段时间后,会重新正确调用一次,然后重复先前情况。
在V3版本中我会设置真实文件名称为原文件名称,而在V4强制要求加入一个唯一性变量,我猜测这是为了适应新的文件Blob逻辑和版本管理功能。但Onedrive已经提供了文件历史版本管理和还原功能,可以单独下载历史版本,可否考虑适配Onedrive自带的版本历史功能,这是可能相关的官方文档链接:driveItemVersion 资源类型。在使用OneDrive自带的版本管理后,应该就能豁免Onedrive存储策略的文件Blob名称不强制添加唯一性变量?还有并不是所有文件都想用浏览器来下载,导入到多线程下载器也是很常见的操作,而生成重定向的直链也没有直接下载方便,还会增加不必要的数据库记录。所以其实适配Onedrive自己的功能才是最优解?还能特性喜加一(?
另附:仔细看了Onedrive存储策略设置要求,其实Blob路径和Blob名称两个之一包含一个唯一性变量即可,所以可以把唯一性变量放在路径,如果不在乎原始存储目录结构太碎片可以这样操作,目前至少可以这么操作来让文件名干净,对于已经加上唯一性变量的文件,我也不知道怎么办(哭),就因为这个原因我几乎没有在升级V4后上传新文件...
我测试出来的情况是,开启
由浏览器处理下载后,Windows下使用百分浏览器,在第一次点击下载的时候可以保存为Cloudreve内显示的文件名,也就是由浏览器处理了。后续再次下载就无法实现浏览器处理下载功能,而是直接获取到SharePoint的直链。在Android下使用via或Firefox完全无法实现,此外在Windows的Brave测试也是完全无法实现,也有可能和浏览器关系不大,而是服务端的一些缓存逻辑错误。 在V3版本中我会设置真实文件名称为原文件名称,而在V4强制要求加入一个唯一性变量,我猜测这是为了适应新的文件Blob逻辑和版本管理功能。但Onedrive已经提供了文件历史版本管理和还原功能,可以单独下载历史版本,可否考虑适配Onedrive自带的版本历史功能,这是可能相关的官方文档链接:driveItemVersion 资源类型。在使用OneDrive自带的版本管理后,应该就能豁免Onedrive存储策略的文件Blob名称不强制添加唯一性变量?还有并不是所有文件都想用浏览器来下载,导入到多线程下载器也是很常见的操作,而生成重定向的直链也没有直接下载方便,还会增加不必要的数据库记录。所以其实适配Onedrive自己的功能才是最优解?还能特性喜加一(? 另附:仔细看了Onedrive存储策略设置要求,其实Blob路径和Blob名称两个之一包含一个唯一性变量即可,所以可以把唯一性变量放在路径,如果不在乎原始存储目录结构太碎片可以这样操作,目前至少可以这么操作来让文件名干净,对于已经加上唯一性变量的文件,我也不知道怎么办(哭),就因为这个原因我几乎没有在升级V4后上传新文件...
后段没有加唯一性校验,如果不怕同名文件被误覆盖的话可以直接修改数据库中的 Blob 配置。
谷歌浏览器,idm 由浏览器接管是开启的,但是下载仍然带uuid前缀不论触发idm与否,只能通过获取直链下载才是不带uuid的名称
而且小概率下载时文件名称正常我下了几十次,就两三次是正常的
Sharepoint 国际版,Mac Edge/Chrome 暂时没有复现。
开启 由浏览器处理下载 后浏览器应该调用 StreamSaver.js 进行下载,不应该设置唤起 IDM,可以尝试添加到 IDM 排除清单。
谷歌浏览器,idm 由浏览器接管是开启的,但是下载仍然带uuid前缀不论触发idm与否,只能通过获取直链下载才是不带uuid的名称 而且小概率下载时文件名称正常我下了几十次,就两三次是正常的
Sharepoint 国际版,Mac Edge/Chrome 暂时没有复现。 开启
由浏览器处理下载后浏览器应该调用 StreamSaver.js 进行下载,不应该设置唤起 IDM,可以尝试添加到 IDM 排除清单。
后台OneDrive存储策略随便改个配置保存一下,回到前台下载,第一次调用了StreamSaver.js,后面就不调用了。 再保存一下设置,又是第一次正常,后面不正常。 每次修改完存储策略就只有第一次下载调用了StreamSaver.js