关于 java 后台 base64 上传到 oss服务器 的坑

项目需要将图片存储到oss服务器上,但是因为用的框架的原因,前端直接传过来图片的base64编码,这个坑我已经踩了两次了,在此记录,以防再犯

byte[] data = EncodeUtils.decodeBase64(user.getAvatarBase64().split("base64,")[1]);
SerialBlob s =  new SerialBlob(data);
InputStream inputStream =s.getBinaryStream();
ossUtils.putObjectForInputStream(fileName,inputStream,"0");

 完整的base64字符串应该是

String str = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2w....."//很长

 如果不对这个字符串做处理,图片上传到oss上也是无法进行查看的,我们只需要 base64,后面的内容就好了,将前面的内容去掉,获取截取出来设定类型都可以。关键就是只要base64,后面的内容这样oss上的图片预览就没有问题了。切记,切记!!!

posted @ 2020-09-23 10:25  xdq123  阅读(1508)  评论(0编辑  收藏  举报