0

嗨,我有一个 HTMl 表单,可以自动生成验证码图像,然后根据生成的验证码自动生成音频剪辑​​。表格如下所示。

<div class="formRow">
            <div class="field">
                <img style="margin-left:91px; margin-top:-6px;" class="image" src="http://www.abc.com/captchaServlet">
            </div>
            </div>
             <div class="formRow">
                  <div class="field">
                  <audio style="margin-left:91px;" controls="controls">
  <source id="audiowav" src="http://www.abc.com/getSound" type="audio/wav">
Your browser does not support this audio format.
</audio>
                      </div>
             </div>

当生成验证码时,我将验证码代码作为属性存储在会话中,然后当我必须生成音频文件时,我从会话中获取属性并生成它。但有时会发生的是,当我刷新页面时,首先调用音频标签 servlet,即http://www.abc.com/getSound在http://www.abc.com/captchaServlet调用之前调用图像和音频不匹配。所以我想确保首先从表单调用 http://www.abc.com/captchaServlet然后http://www.abc.com/getSound

4

1 回答 1

2

您无法保证会发生这种情况,因为浏览器正在决定以何种顺序加载资源,这取决于浏览器,您不能真正强迫它遵循特定的顺序。

你应该让你的验证码以不同的方式工作。也许有页面生成的实际代码并放入会话中,然后getSoundcaptchaServlet会话中的代码生成相应的声音或图像?

于 2012-11-18T02:54:52.060 回答