-
图片验证大概思路: 在login()方法里面通过getElementById找到“insert”,获得它对应的子节点,然后遍历所有的子节点获得对应得id号和前缀为“img_”,取出top和left,拼接成字符串赋值给location,最后提交submit给 public String login(……)这个处理层方法,因为每张图片都有对应的唯一key,所有new出Cookie对象通过getUniqueKey()赋值给“note”,最后判断是否拿到note这个value,如果没有拿到直接返回“error”错误页面,拿到就进入下一层条件语句继续判断,最后判断页面传过来的location和Cache里面的ImageResult验证,通过就返回给OK的界面,否则相反查看全部
-
图片合并 从左上角起始点开始计算,order负责顺序,定义x1负责第一排0,1,2,3。定义x2负责第二排4,5,6,7 int x = (order%4)*200 —>x坐标 int y = order <4 ? 0 : 200 —>x不变,改变y 通过setRGB方法设置图片的位置信息 通过x1+=width和x2+=width以此累加 UUID是java.util里面生成主机唯一ID的类,以确保唯一性查看全部
-
无验证码--垃圾骚扰查看全部
-
验证码历史查看全部
-
生成图片算法<br> random(int min,int max),random(int min,int max,Integer...not)从ImageGroup中 group1-group11里面随机取出一个数字,再从ImageGroup找到对应的key,拿到对应的keyGroup<br> int num = random(0,imageGroupMap.size()-1);<br> String name = new ArrayList<String>(imageGroupMap.keySet()).get(num);<br> ImageGroup keyGroup = imageGroupMap.get(name);<br> keyGroup的思路可以从素材的分类可以看出<br> int leftCount = 8 - keyGroup.getCount();这段代码是指在keyGroup得到图片的数量,然后得到剩下还需要补充的图片数量<br> case1:leftCount==4<br> 如果随机到偶数,则在数量是4的图片里面拿,也就是4+4=8;<br> 如果随机到奇数,则在数量是2的图片里面拿,也就是4+2+2=8;<br> 第二次加2调用random带有三个参数的方法,是为了防止下一次刷新时上两张图片又重复出现<br> case2:leftCount==6<br> 如果随机到偶数,则在数量是6的图片里面拿,也就是2+4+2=8;<br> 如果随机到奇数,则在数量是6的图片里面拿,也就是2+2+2+2=8;<br> 奇数代码处理类似leftCount是4的情况查看全部
-
验证码最初的原型是为了防止垃圾信息骚扰,Luis von Ahn 就发明了 CAPTCHA ,CAPTCHA全称为“Completely Automated Public Turing Test To Tell Computers and Humans Apart”意思就是全自动区分计算机和人类的图灵测试,后来不断的升级,出现了图片验证码,语音验证码,还有更高级得去验证码。但是语音验证码的成功率不是很高,去验证码是根据用户的使用习惯识别是不是用户本人操作,从而选择是否出示验证码查看全部
-
JS代码思路罗列 document.getElementById(“insert”)去获取包装整个验证图片的div(width=“300” height=“150”), 通过while循环去获取div里面每张小图对应的偏移量 while(obj) { leftValue += obj.offsetLeft; topValue += obj.offsetTop; obj = obj.offsetParent;返回一个对象的引用,这个对象是距离调用offsetParent的元素最近的 } 接下来通过window.event时间去获取触发event对象的元素 获取那个imooc那个图标的位置,imgDivId是给每个每张图片设置一个id标识 document.createElement()是在对象中创建一个对象,很好理解设置成块级元素后面容易给定宽度高度定义它们的偏移位置 最后通过inline解决div排挤问题,使每次点击都能把各个div自动排为一行,就象段内的文字一样~ removeSelf就是再次点击达到移除效果查看全部
-
采用SpringMVC框架,具有分离控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制,包含多种视图技术~查看全部
-
设计思想以及各个包、类的分工安排查看全部
-
方案二(相比方案一是为了实现更好的用户体验) 跟方案一不同地方在于第3、4步, 第三步考虑不同验证码提交的验证码是不一样,加入坐标这个概念作为标识,最后在服务器端同样加入坐标作为标识查看全部
-
方案一 1.浏览器请求验证码图片; 2.服务器返回验证码图片以及图片标识; 3.服务器提交验证码; 4.服务器验证图片内容及标识;查看全部
-
验证码的历史追溯<br> 1.无验证码,垃圾骚扰;(这个如果有自己的博客或者网站就知道验证码的利害)<br> 2Luis von Ahn — CAPTCHA ;<br> P.S(Luis von Ahn这个是一个神奇的人物,大家可以看作是验证码背后的男人<br> CAPTCHA全程为“Completely Automated Public Turing Test To Tell Computers and Humans Apart”意思就是全自动区分计算机和人类的图灵测试)<br> 3.不断的升级;<br> 4.去验证码。查看全部
-
方案二查看全部
-
方案一查看全部
-
验证码查看全部
举报
0/150
提交
取消