由于安全性考虑,许多浏览器不允许访问本地文件。
用谷歌浏览器打开html时,img的src赋值如F:/XXX/XXX/**.jpg,console显示no allowed to load local resourses
1. 将src改为file:///F:/XXX形式,依然无法加载图片
2. 试过下载LocalLinks插件,无效
3. 加--allowed-access-file-from-files命令失败
4. 在后台读取图片的字节流,再转成JSON形式字符串,返回给前端显示
一开始使用FileInputStream,将字节流读入byte数组
FileInputStream in=new FIleInputStream(imageurl);
byte[ ]data=new byte[in.avaliable]; //这一句可得到正确文件大小的byte数组
in.read(data); //调试发现,data数组每次的值都不一样,大小与正确文件大小不符,原因未知
in.close();
后使用IOUtils.toByteArray方法,可正常运行,后台代码如下
public String showPicture(String imageurl,HttpServletResponse response){
FileInputStream in;