浏览器异步加载服务器端的图片

需求:浏览器中的<img>标签动态更换来自服务器端的图片。

1.java后台service访问服务器端本地资源,生成二进制数据,转成base64编码。

BASE64Encoder encoder = new sun.misc.BASE64Encoder(); 
File file = new File(fileurl);  
FileInputStream fips = new FileInputStream(file);  
ByteArrayOutputStream bops = new ByteArrayOutputStream();  
int data = -1;  
try {  
    while((data = inStream.read()) != -1){  
        bops.write(data);  
    }
} catch(Exception e){  
    return null;  
} 
byte[] btImg = bops.toByteArray();
return encoder.encodeBuffer(btImg).trim();

2.前台js接收上面来自服务器后台的base64编码,设置为img标签的src。

//可以使用ajax接收来自服务器端的base64编码
$("img").attr("src", "data:image/jpeg;base64," + 来自服务器的base64编码);



你可能感兴趣的:(浏览器异步加载服务器端的图片)