struts2产生验证码时, 绘图BufferedImage对象 已经弄好了,发送的用啥输出流呢?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了struts2产生验证码时, 绘图BufferedImage对象 已经弄好了,发送的用啥输出流呢?相关的知识,希望对你有一定的参考价值。
搜索后用的ByteArrayInputSream但不懂为什么,想问下原理,看有没有别的方法
可以用ImageIO:response.setContentType("image/jpeg");
OutputStream ops=response.getOutputStream();
javax.imageio.ImageIO.write(image, "jpeg", ops); 参考技术A 别的办法也有
就是不直接输出流
已输出图片的形式
然后给出图片的URL做在你验证的位置
当然这只是个例子
其实还有很多办法的 参考技术B 难道是从页面上再从流中读出来?我也不懂。
我的做法是直接输出到response的流中,页面上中<img src="xxxx.action"/>来调用
制作验证码时 图片无法刷新
1在网页上制作上图中的验证码时,点击图片不能刷新依旧是原图,找了好久终于发现是js语句中的错误,如下:
如果不加后面的new Date().getTime(),每次请求/AuthCode/getAuthCode都是一样的所以图片不会变化,加上之后每次请求会变化,就会重新加载图片了1
function reload(){
document.getElementById("bt").src="/AuthCode/getAuthCode?" + new Date().getTime() ;
}
document.getElementById("bt").src="/AuthCode/getAuthCode?" + new Date().getTime() ;
}
以上是关于struts2产生验证码时, 绘图BufferedImage对象 已经弄好了,发送的用啥输出流呢?的主要内容,如果未能解决你的问题,请参考以下文章
令牌无效。使用 UserManager.ConfirmEmailAsync(user.Id, code) 验证电子邮件验证码时