阿星的博客

一种使用七牛生成图片验证码的思路

前言

图片验证码是大家在开发过程中很常见的一种功能需求,用来做一些防刷的接口很是方便,复杂点的甚至还会使用滑动拼图这样的第三方验证码服务。

当然,交互越复杂,在各端的实现也就越复杂,而且,这种复杂的需求往往是应对用户的恶意行为,在攻防战中不断升级而来。

所以,回归本源,在最初的时候,咱可能仅仅只需要一个普通的图片验证码。

还想更简单

如果只是普通的图片验证码,在服务器端使用各语言都有图片处理的库来实现图片添加文字的操作。

然而,我连这些图片处理的库也不想用,有没有一种跨语言的图形验证码的实现方案呢?

可以试试七牛,尝鲜用户每月免费10G流量可供开发测试,够用了。注册链接

捋一下思路

简单来说,我们需要一种”在图片上添加文字“的方案,而七牛是支持在图片上加文字水印的功能的。

所以,我们只要实现: 生成随机字符->用随机字符在七牛底图上加水印拼接成图片地址->读取水印图片并输出图片。

给个demo

直接上代码,给个demo供大家参考:github.com/wanyaxing/qiniu-captcha

也可以访问 这里 看运行效果。

后语

以上,给大家提供一种图片验证码的生成思路,至于如何验证用户的请求,那就是另一件事了。

原文来自阿星的博客:https://wanyaxing.com/blog/20190807123507.html

X