猿问
网站验证码一般放在服务器端什么地方?为什么?
网站验证码一般放在服务器端什么地方?为什么?java php .net做的网站验证码都放同一个地方吗?
胡说叔叔
浏览 1873
回答 5
5回答
函数式编程
一般是存在session里的
0
0
0
BIG阳
简单点说,验证码生成的时候,先生成随机字符串,这个变量以session的形式存储在服务器内存中,与客户端session-id对应,然后使用GDI+等绘图方式绘制成图片然后输出到页面上,服务端不保存图片只记录字符串用于验证
0
0
0
MMMHUHU
一般都用 session,可以使用默认的临时文件,也有把 session 放在数据库或内存里、
0
0
0
元芳怎么了
客户端访问网站服务端生成Session标记,并将Session标记返回给客户端,一般通过在响应中输出在Cookie中实现。客户端携带Session标记访问验证码网址服务端生成随机码,并将随机码渲染成图片输出,随机码(非图片)存储与内存中的数据结构,一般是字典,只要维护要易失行即可。客户端携带Session标记回传用户输入的验证码服务端根据Session通过字典查找之前生成的随机码并和客户端回传的验证码进行比较。看到了吗?服务端并不会保存验证码图片,仅仅在短时间内保存验证码的值。因为保存图片对服务器并没有意义,而且会增加服务器的IO和存储负担。
0
0
0
随时随地看视频
慕课网APP
相关分类
Java
我要回答