wordpress插件:WordPress真微信公众号验证码查看插件

看到标题的时候,很多人应该就会说这个功能已经好长时间就有了,为什么还发这个文章呢? 云落肯定不至于把以前的功能拿过来写的,今天写的是不是一个真正的公众号验证码查看功能,是一个睡床上的时候想到的一个功能。

插件推荐:WordPress真微信公众号验证码查看插件 - 第1张 - boke112联盟(boke112.com)

思路

这里先简单说一下这个设计思路,公众号验证码可见首先我们要设计一个验证码,这个验证码必须是唯一,并且是有过期时间的,从这一点来说,目前网上流传这些公众号验证码可见功能其实是假的,因为这个验证码是人工设置的,是一个固定的字符,使用一次之后就会知道。

首先想到的方法是采用一个公共的验证码池,就是一次性生成一些验证码,然后放在一个 txt 文件里面,然后去随机调用,读取文件之后组成数组,然后从数组中调出验证码,这个方法实现之后,然后经过思考了下,发现虽然能实现我需要的功能,但是没法用,毕竟这样等于验证码直接公开了,所以这个方法被淘汰了,又重新设计了另一个验证码方法。

验证码设计

重新设计的验证码方案是基于时间,域名和微信 token 的,时间上以 1 个小时为单位,那么有 60 分钟,每分钟对应一个验证码,就是有 60 个,比如 13-12,分钟就是 12,那么验证码可以简单的设为 12,如果需要每 2 分钟换一次验证码,当前分钟数除以 2 就可以了,以此类推。将网站域名和当前分钟拼接字符串,比如拼接成 12https://gitcafe.net,再加上微信公众号 token 拼接成【12https://gitcafe.netweixintoken】,稍后对其加密计算,使用 Sha1 方法,计算出来是 40 位的字符串,我们截取其中 6 位作为验证码,这个时候再加入日期,比如今天是 2-18,那么就从第 18 个截取 6 为字符串,保证一个月 30 天验证码不发生重复,最终这个 6 位字符串作为验证码可以发送到微信公众号以及用来验证网页输入的验证码是否正确。

验证码设计 OK 了,下面就是连接微信公众号了,在公众号示例代码基础上稍微改改,只保留微信类,其他代码全部不要,试验一下,OK,没问题。

微信端好了,然后就是 WordPress 端了,这里我要吐槽一下网上流行的那个微信公众号验证码可见的代码了,那么多时间还是一个原生的表单提交,而且是刷新之后会重复提交的。云落这里稍微改下,改为 ajax 提交实际体验会好些。

本文代码不重要,重要的是验证码设计思路,后面需要使用验证码的地方也可以这样设计,另外这种验证码有一个小缺点,就是过期时间并不是从验证码生成之后开始计算的,是验证码随着时间过期的,所以如果你在 59 秒时获取到验证码就会立马失效,当然这个只是小缺点,不妨碍使用,过期验证码重新申请就可以了。

插件说明

因为是非常简单的插件,所以就没有后台,在插进里面有两个常量,自己定义下,一个是微信 token,一个是公众号二维码图片,插件就一个文件打开一看就明白,另外说明下,Js 代码使用 Jquery 的。另外一个就是管理员是没有效果的,管理员需要查看的话,需要退出账号看下。

 

下载地址:https://gitcafe.net

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享