我在 asp.net 中尝试使用验证码处理程序时遇到困难,任何帮助将不胜感激。想象一下我们有这样一个处理程序:
public void ProcessRequest(HttpContext context)
{
var text = generateText();
using (var image = generateImage(text))
{
context.Response.Clear();
context.Response.ContentType = "image/jpeg";
context.Session.Add("captcha", text);
image.Save(context.Response.OutputStream, ImageFormat.Jpeg);
}
}
然后在一些 default.aspx 我们放:
<img src="<%=CaptchaImageUrl %>"/>
<p><%=Context.Session["captcha"]%></p>
这意味着我们想显示验证码图像并检查存储在会话中的验证码值。但问题是 default.aspx 中的当前会话值在验证码处理程序方面已过时,并且
<p><%=Context.Session["captcha"]%></p>
将始终返回以前的验证码值。有什么建议么?