最近查看某網站圖片時意外看到以下:前端
很是好奇,去查了下,屬於一種圖片base64轉字符串後由瀏覽器以圖片方式顯示的方式.java
用在前端處理圖片:web
1 這種方式用在網頁上,處理較小的圖片時,可讓瀏覽器發少送一次請求,達到優化訪問的目的.chrome
2 存在瀏覽器兼容問題 IE11 不支持,chrome,firefox支持後端
3 文件由於base64轉換後會變大瀏覽器
用在後端處理文件:優化
1 字符流的形式傳遞文件,極大的方便了小型文件的操做,如webservice裏使用,以xml方式傳輸文件網站
2 不單單圖片,能夠處理任何形式的文件firefox
相關代碼:code
ByteArrayOutputStream out = new ByteArrayOutputStream(); ImageIO.write(image, "PNG", out); String str = new String(Base64.encodeBase64(out.toByteArray()));
不推薦在前端使用