有没有用js实现的验证码库?

2013-01-14 19:08:40 +08:00
 leohxj
简单的也行。
4640 次点击
所在节点    JavaScript
16 条回复
Mutoo
2013-01-14 19:37:30 +08:00
js是前端脚本,任何在前端产生的内容都不足以做为验证码。

验证码是用来阻碍自动化脚本的,你用js的话,等于直接把验证码给公开了。

如果你不想自己实现服务端产生验证码的话,可以考虑用这个开放服务 http://www.google.com/recaptcha
leohxj
2013-01-14 22:36:28 +08:00
@Mutoo 前端做校验不可取吗?
arg0
2013-01-14 22:44:40 +08:00
@Mutoo 最近想换验证码,google这个有些网络下访问不了。

在用户那碰到几次这样的现像了,google服务不稳定。
undozen
2013-01-14 22:44:48 +08:00
有过,不是库,是 SONY 的网站。。。
binux
2013-01-14 22:53:42 +08:00
验证码是通过识别明文,然后比较识别结果和明文来判别人类的。
如果只有js,那么比较也是由客户端进行的,那么意味着明文暴露给了机器,无从比较。
如果部分js,那要js干嘛?直接生成图片不就好了吗?
leohxj
2013-01-14 22:58:22 +08:00
@undozen 什么意思,给个链接看看。
undozen
2013-01-14 23:01:16 +08:00
RelativeLayout
2013-01-14 23:19:40 +08:00
js做验证码没有意义
heroicYang
2013-01-14 23:21:14 +08:00
不要相信前端的验证...
revlis7
2013-01-14 23:34:32 +08:00
既然是校验,那么肯定牵涉到用户输入与真实值的比较,如果放在js做check,那就是在浏览器里做判断,用户可以在浏览器里通过工具(比如firebug),绕过校验机制,这样验证码也就失去了作用。

所以一般情况下,check验证码都应该是由后台完成的,比较流行的插件也应该是应用在服务器端的。

另外recaptcha可能比较入文艺青年的法眼,但是实际在国内应用时,对英语基础很差或很不敏感的人(比如低龄或高龄人群)不是很友好。

我用过一个俄罗斯人用php写的Kcaptcha,如果是php的话可以参考下。
luin
2013-01-14 23:55:47 +08:00
jQuery.ajax()
CosWind
2013-01-15 09:24:43 +08:00
同上,前端做这个好比具有密码找回。。
BOYPT
2013-01-15 10:13:55 +08:00
@Mutoo 谁说js只在前端跑的。
Mutoo
2013-01-15 10:43:52 +08:00
@BOYPT 我当然知道还有nodejs和jscript,但是你看,人家楼主问的是前端。
soulteary
2013-01-15 14:14:35 +08:00
换一个思路吧,不要验证码,只有达成某些条件,动态创建一个可以填写或者提交的控件。接口判断准确的refer和session我也觉得也行。除了恶意搞你的人,但是针对恶意搞你的人,除了机制特别完善,你也没有办法不是么?机器人,一般用户,基本灌不了你的水了。
beef9999
2014-12-17 11:20:36 +08:00
@Mutoo
要翻墙吧,用户用不了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/57570

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX