windows系统下,删除附件表里的图片时,oss远程存储报错
oss文件删除

buildadmin2.1.1版本,windows系统下,删除附件表里的图片时,oss远程存储报错:'图片文件url' object name is invalid,查找后发现app/common/model/Attachment.php的onAfterDelete模型事件里,没有对附件表的url进行处理就调用Event::trigger('AttachmentDel', $model);
windows系统下DIRECTORY_SEPARATOR返回反斜杠\,导致附件表的图片url路径是反斜杠\的字符串,建议在Event::trigger('AttachmentDel', model);之前进行url处理,model->url = str_replace("\",'/',$model->url);
之前上传后图片url都是/斜杠的,更新程序后现在都是\斜杠了,也是因为Filesystem::fsFit函数处理的原因,\斜杠的url发给前端可能还需要处理下才正常显示,前端传给后端时有时也需要处理下,感觉还不如Filesystem::fsFit函数统一都转为/斜杠省事一些,一点小建议,或许理解不到位,供大佬参考

1个回答默认排序 投票数排序
YANG001
YANG001
这家伙很懒,什么也没写~
2月前

Filesystem::fsFit 本身是没有问题的,对文件路径的处理也没有问题,对 url 进行处理时使用它就有点问题了

新版本文件上传使用了多驱动设计,我们正在逐一排查和测试,url将统一使用 / 分割,感谢您的返馈~

hellomf
hellomf回复YANG001
hellomf
2月前

收到 感谢大佬 自己开发的完整应用插件快完成了 开发快半年了 期待上线 希望buildadmin生态越来越好

YANG001
YANG001回复hellomf
这家伙很懒,什么也没写~
2月前

感谢支持~

请先登录
0
1
0
3