Refresh in Simple_captcha
对于登录,为了防止机器人,部分网站需要配合验证码进行登录。常用的Gem有 recaptcha 和 simple_captcha。
下面简要描写一下,我的使用过程。项目是在他人的基础上修改的,他人已经使用 simple_captcha 提供了验证码登录的功能。但是没有刷新的按键功能。
对于“无刷新的验证码”登录功能,可以参考 https://github.com/galetahub/simple-captcha。 以下是添加刷新功能的过程。
原代码中,登录页面的views代码为:
1
|
|
此代码会自动添加输入框和验证码图片,其中的参数可以参考之前 github 项目链接。
需要添加刷新功能,就添加按钮:
1 2 3 4 |
|
通过观察,页面中的验证码图片的链接值:
1
|
|
可以看到有四个参数值,包括:distortion, image_style, simple_captcha_key, time.
从资源的链接值中,可以试图简单并直接去改变time的值。
1 2 |
|
这个方案或许能够改变,但是字符还是那几个;甚至,可能没有发生变化。可以想象一下其它的参数,毕竟是刷新吧,可以将distortion=low了,提升一下差别特性。
那么,如果想进一步,如何使得字符也改变呢?
需要添加额外的接口,
1 2 3 4 5 |
|
添加 views/simple_captcha/update_simple_captcha.erb 文件,
1
|
|
注意,参数是要加上去的。
1 2 3 4 5 |
|
这样就字符就可以改变了。