項目需要將圖片存儲到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上的圖片預覽就沒有問題了。切記,切記!!!