记一个很奇怪的火狐验证码问题(未解决)

今天闲来无事打算封装一个Java的验证码类,实现基本功能很容易,可是测试的时候却发现了一个奇怪的问题,而且暂时还未找到答案。要想说清楚这个问题,首先给大家看一张图片,请大家注意图中标注1,2,3处的验证码。

checkcode

问题描述:

我在java中写了一个servlet实现构造一个验证码,servlet负责返回java生成的一张图片(其实是jpeg的流),使用IE直接浏览这个生成地址正常,但是使用火狐浏览时却发现显示出来的验证码跟实际的验证码是不同的。后来我使用了firebug对访问情况进行跟踪,得到了上面的结果:

1处是用户看到的验证码;2处是当前实际的验证码;3处是系统生成的验证码。

这就好像火狐在请求完图像之后,又重新请求了一遍一样,但是使用FireBug却仅仅抓到了第二次请求。而且更奇怪的是,我将这个地址嵌入到<img>标签中,却又变得正常了,看到的跟实际请求的验证码又是相同的了。实在搞不清楚这是怎么回事了……

后续打算:

打算使用WireShark抓包试试看,看看是不是发起了两次请求。这个问题暂时无解,欢迎大家广泛讨论。