首页 > 其他分享 >webman:生成图形验证码(v1.5.7)

webman:生成图形验证码(v1.5.7)

时间:2023-09-19 21:24:37浏览次数:37  
标签:use webman 验证码 captcha v1.5 https com

一,官方文档地址:

1,文档

https://www.workerman.net/doc/webman/components/captcha.html

2,用到的库项目代码地址:

https://github.com/webman-php/captcha

二, 安装库:

1,用composer安装

liuhongdi@lhdpc:/data/webman/imageadmin$ composer require webman/captcha

2,查看所安装库的版本:

liuhongdi@lhdpc:/data/webman/imageadmin$ composer show webman/captcha
name     : webman/captcha
descrip. : Captcha generator
keywords : bot, captcha, spam
versions : * v1.0.2
…

三,php代码:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 <?php namespace app\controller;   use support\Request; use app\result\Result; use support\Log; use think\facade\Db; use think\facade\Cache;   use Webman\Captcha\CaptchaBuilder; use Webman\Captcha\PhraseBuilder;   use app\model\Comment as CommentModel;   class ImageController {       /**      * 输出验证码图像      */     public function captcha(Request $request){         // 验证码长度         $length = 4;         // 包含哪些字符         $chars = '0123456789abcefghijklmnopqrstuvwxyz';         $builder = new PhraseBuilder($length, $chars);         $captcha = new CaptchaBuilder(null, $builder);           // 生成验证码         $captcha->build($width = 200, $height = 80, $font = null);         // 将验证码的值存储到session中         $request->session()->set('captcha', strtolower($captcha->getPhrase()));         /*                   // base64 image         $image = $captcha->inline();         //json         return json(['code' => 0, 'image'=>$image,'uniqid'=>'123']);         */         // 获得验证码图片二进制数据         $img_content = $captcha->get();         return response($img_content, 200, ['Content-Type' => 'image/jpeg']);     }       /**      * 检查验证码      */     public function checkCaptcha(Request $request)     {         // 获取post请求中的captcha字段         $captcha = $request->post('captcha');         // 对比session中的captcha值         if (strtolower($captcha) !== $request->session()->get('captcha')) {             return json(['code' => 400, 'msg' => '输入的验证码不正确']);         }         return json(['code' => 0, 'msg' => 'ok']);     }

说明:刘宏缔的架构森林—专注it技术的博客,
网站:https://blog.imgtouch.com
原文: https://blog.imgtouch.com/index.php/2023/09/19/webman-sheng-cheng-tu-xing-yan-zheng-ma/
代码: https://github.com/liuhongdi/ 或 https://gitee.com/liuhongdi
说明:作者:刘宏缔 邮箱: [email protected]

四,查看效果:

五,查看webman的版本:

liuhongdi@lhdpc:/data/webman/imageadmin$ composer show workerman/webman-framework
name     : workerman/webman-framework
descrip. : High performance HTTP Service Framework.
keywords : High Performance, http service
versions : * v1.5.7
...

标签:use,webman,验证码,captcha,v1.5,https,com
From: https://www.cnblogs.com/architectforest/p/17715836.html

相关文章

  • Selenium+dddocr轻松解决Web自动化验证码识别
    大家好,我是狂师,今天给大家推荐一款验证码识别神器:dddocr。1、介绍dddocr是一个基于深度学习的OCR(OpticalCharacterRecognition,光学字符识别)库,用于识别图片中的文字。它可以识别各种类型的文字,包括印刷体、手写体、表格、条形码等。dddocr库使用了深度卷积神经网络(CNN)和循环神......
  • Homework 验证码界面(非全部自己完成)
    importjavax.swing.*;//import代表“引入”//javax.swing代表“路径”(在javax文件夹下的swing文件夹)//*代表“全部”importjava.awt.*;//importjava.awt.event.ActionEvent;//是JAVAAWT抽象窗口工具集包的一部分,用于......
  • JAVA 实现登录页面生成验证码
    1importjavax.swing.*;2importjava.awt.Color;3importjava.awt.Font;4importjava.awt.Graphics;5importjava.awt.event.ActionEvent;6importjava.awt.event.ActionListener;7importjava.util.Random;89publicclassLoginFrameext......
  • DVWA靶场通关-Insecure CAPTCHA (不安全的验证码)
    BruteForce(暴力(破解))、CommandInjection(命令行注入)、CSRF(跨站请求伪造)、     FileInclusion(文件包含)、FileUpload(文件上传)、InsecureCAPTCHA(不安全的验证码)、    SQLInjection(SQL注入)、SQLInjection(Blind)(SQL盲注)、XSS(DOM)(基于DOM树)、    XSS(Reflec......
  • 验证码
    import java.util.Random;import java.util.Scanner;public class CaptchaGenerator {    public static void main(String[] args) {        // 生成随机验证码        String captcha = generateCaptcha();        System.out.printl......
  • 验证码
    packageyanzhenma;importjava.util.Random;importjava.util.Scanner;publicclassCaptchaGenerator{publicstaticvoidmain(String[]args){//生成随机验证码Stringcaptcha=generateCaptcha();System.out.println("生成的验证码为:"+ca......
  • 学习常见的反爬虫手段,如验证码、限制访问频率等
    验证码(CAPTCHA):用于识别机器人和自动化程序,可以通过以下方式实现:fromPILimportImageimportpytesseract#读取验证码图片image=Image.open('captcha.png')#使用pytesseract库进行验证码识别text=pytesseract.image_to_string(image)print(text)IP限制/访问频......
  • .Net使用 Tesseract 框架识别简单验证码
    1.图片验证码生成publicclassCaptchaGenerator{publicstaticstringGetRandomAuthcode(intlength){stringchkCode=string.Empty;//验证码的字符集,去掉了一些容易混淆的字符char[]character={'0',......
  • 输入界面(html,javascript)可随机生成验证码
    <!DOCTYPEhtml><html><body><h2>登录界面</h2><!--form表示表单--><formid="loginForm"><labelfor="username">用户名:</label><br><inputty......
  • 百度中文点选验证码研究
    之前百度都是只有旋转验证码,最近总是出现中文点选验证码。而且中文数量比较多,大图中有固定的7个中文字符需要识别。我首先想到使用通用的中文识别,当时我尝试了很多出名的中文识别但是效果都非常差,基本上全错,完全是不可用的状态。没有办法,只有自己来训练识别模型了。由于中文种类非......