今天java生成base64传返给前端发现要用头部标识文件的属性才可以显示
data:,文本数据
data:text/plain,文本数据
data:text/html,HTML代码
data:text/css;base64,css代码
data:text/javascript;base64,javascript代码
data:image/x-icon;base64,base64编码的icon图片数据
data:image/gif;base64,base64编码的gif图片数据
data:image/png;base64,base64编码的png图片数据
data:image/jpeg;base64,base64编码的jpeg图片数据
java生成base64的方法
File file = new File(realpath);
if (file.exists()) {
//FileUtil.showPic(realpath, wjm.substring(0, wjm.lastIndexOf(".")));
String base64 = "";
FileInputStream inputFile = new FileInputStream(file);
byte[] buffer = new byte[(int)file.length()];
inputFile.read(buffer);
inputFile.close();base64 = Base64Encoder.encode(buffer);
前端示例
body { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSuQmCC");}
/**
* data:text/css,css代码,示例:
* 注意:下列方式是无法设置background-image:url()样式的
*/
<link rel="stylesheet" type="text/css" href="data:text/css;charset=gbk,#pseudo{color:red;}"/>//data:text/javascript,javascript代码,示例:
<script type="text/javascript" charset="gbk" src="data:text/javascript;charset=gbk,alert('%D6%D0%CE%C4')"></script>
感谢分享。。。