介绍
验证码的目的是为了防范恶意攻击,如在发送手机短信之前校验验证码,可以防止短信接口被恶意调用导致的金钱损失。验证码有图片验证码,更智能的拖动验证码,点选验证码,今天我们看一下图片验证码的实现。
实现
添加maven依赖
com.github.penggle
kaptcha
2.3.2
public class Client {
public static void main(String[] args) throws IOException {
Producer producer = createProducer();
// 生成随机字符串
String verifyCode = producer.createText();
// 生成图片
BufferedImage bufferedImage = producer.createImage(verifyCode);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
ImageIO.write(bufferedImage, "jpg", stream);
System.out.println(Base64.getEncoder().encodeToString(stream.toByteArray()));
}
private static Producer createProducer() {
Properties properties = new Properties();
properties.setProperty(Constants.KAPT