你理解上的错误,其实后台是已经知道这个值了,但客户端不知道这个值,而是通过人为的识别将其识别出来,返回再返回即可。
一般的验证码程序是由后台生成一个随机数,这个随机数就是验证码,保存到session中,因为客户端无法获得到相应的session值,所以客户并不知道这个验证码的,此处我们需要一个图片生成程序,将这个验证码按某种特征输出给客户端,而客户端却要人为识别这个特征,然后输入到上传的文本框中,表示是人为识别而非是计算机的其他的行为——所以这验证码的作用就是,你将验证码的这个信息变成一个计算机无识别,而人能识别的信息——比如图片。
一般情况下,我们认定验证码的标准是:计算机识别程度难度越大越好,人认别的难度越低越好。其实它启到的作用就是区分人机——防止注册机的作用。
当然如果你使用验证码控件的话,那么验证码程序会自动生成一个验证码,该验证码是一个属性可以进行获得,自动还会生成一个图片,你只需要获得的验证码记录到session中,然后将图片发送到客户客即可。
验证码就是以键/值对的形式存放在Session中,context.Session["Code"] =“验证码”;然后再取出你文本框中的与你存放在Session中的值对比context.Session["VerifyCode"].ToString()==文本框值。