一、该问题的重现步骤是什么?
首先,代码已参考上个帖子改完(https://sns.bladex.cn/q-3824.html),也实现了自定义规则。
上个帖子一直不生效的问题,是因为我是用postman调用的我自己写的接口,用的是 MinioTemplate,web上测试使用的是OssBuilder(自定义规则生效)
二、你期待的结果是什么?实际看到的又是什么?
使用 MinioTemplate 的时候怎么使自定义规则生效?
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
windows 10 , bladex 2.7.0
四、请提供详细的错误堆栈信息,这很重要。
五、若有更多详细信息,请在下面提供。
使用 MinioTemplate 上传返回的路径 ( 错误的,postman调用的上面截图中的自写接口)
使用 ossBuilder.template().putFile(....)上传返回的路径(正确的,web测试)
其实配置和上个帖子没有任何改变,MinioTemplate主要是靠自定义OssRule的bean,相关逻辑,你可以去看下blade-starter-oss-minio就知道他的实现逻辑,上个帖子其实已经说的很明白了,希望以后遇到问题可以先调试调试,理清逻辑
不好意思,怪我前面没有表诉清楚,在bladex核心项目的blade-resouce子工程下使用OssBuilder与MinioTemplate上传文件路径都是对的;
我困惑的是在bladex-biz项目中使用MinioTemplate上传文件后路径还是默认的;
我一直以为在blade-resouce工程中配置了自定义规则后,blade-biz工程注入MinioTemplate后也能拿到自定义配置,结果拿不到,我在blade-biz工程中重新配置规则后已经可以了。
每个工程独立配置也好,方便文件隔离,就是公用的路径麻烦点需要每个biz工程都重复写一次。
每个OssBuilder与MinioTemplateMinioTemplate
如果你只是要在biz使用MinioTemplate,那么bladex的resource是一个代码都不需要改的。只需要biz新增一个rule并且将它实例化就行。
当然你想做成独立还是通用都是没问题的,想独立,那么就在每个服务自定义不同的rule,毕竟会有不同场景要不同上传目录的需求。想通用,那么把这个rule写到blade-resource-api这个包内,需要用到的引用这个依赖就可以配置一次,全系通用了。
只需要理解整个运行逻辑,那么问题就很好解决,既然已经到需要自己拓展的时候,就顺带把实现代码都看一遍,搞懂了后续拓展就没阻碍了
扫一扫访问 Blade技术社区 移动端